Skip to main content

Descripción del paquete

Project description

⚠️☢️☣️ For this to work properly, it must be run within the main folder of a Git repository and Git must be installed. ☣️☢️⚠️

Git History Analyzer

https://pypi.org/project/git-history-analyzer/

This package provides a simple way to analyze the commit history of a specified file in a Git repository. It retrieves the complete commit history along with the changes made in each commit, allowing users to track modifications effectively.

Features

  • Retrieve commit history for a specific file.
  • Display details such as commit ID, author, date, and commit message.
  • Track line changes with added and removed lines.

Installation

You can install the package using pip:

pip install git-history-analyzer

Usage

Here's how to use the GitCommitsReportGenerator function:

Parameters

report_type=['blame', 'log_history'], print_details=False

  • list_files_to_read (list): list of The path to the files you want to analyze. Please use single slashes (/) for linux or double backslashes (\\) for windows, depending on the operating system you are using to avoid directory-related issues.
  • report_type (list) ['blame', 'log_history']
  • print_details (bool): If set to True, the function will print the details of each commit. Default is False.

Output

The function returns a list of dictionaries, where each dictionary contains:

  • commit_id: The ID of the commit.
  • commit_author: The author of the commit.
  • commit_email: The author's email address.
  • commit_date: The date of the commit.
  • commit_message: The message associated with the commit.
  • changes: A list of changes, each detailing the type (added or removed), the line content, and the line number.

Reports Directory

for blame_report_main.py and log_history_main.py

📦 jorge_cardona_project [project_directory]  
┗ report [package]  
┃ ┣ 📂 blame [package]  
┃ ┃ ┣ blame_report_main.py  
┃ ┣ 📂 log_history [package]  
┃ ┃ ┣ log_history_main.py  
┗ 📂 deployment [package]  
┗ 📂 requirements [package]  
┗ 📂 test [package]  
┗ 🐍 main.py [__main__]  
┗ 📜 README.md  
┗ ⚠️ .gitignore  

Example blame report

from git_history_analyzer import GitCommitsReportGenerator

# Example usage
list_files_to_read = ['C:\\Users\\USUARIO\\Documents\\satellite_notifier\\main.py',
                      'C:\\Users\\USUARIO\\Documents\\satellite_notifier\\.github\workflows\\main.yml']

GitCommitsReportGenerator(list_files_to_read=list_files_to_read,
                            report_type=['blame'],
                            print_details=True)

Example Output - blame report

blame

git_blame_report

Example log_history report

from git_history_analyzer import GitCommitsReportGenerator

# Example usage
list_files_to_read = ['C:\\Users\\USUARIO\\Documents\\satellite_notifier\\main.py',
                      'C:\\Users\\USUARIO\\Documents\\satellite_notifier\\.github\workflows\\main.yml']

GitCommitsReportGenerator(list_files_to_read=list_files_to_read,
                            report_type=['log_history'],
                            print_details=True)

Example Output - log_history report

log_history

git_log_history_report

GitCommitsReportGenerator(list_files_to_read=list_files_to_read, report_type=['log_history'] print_details=True)

Log History and Blame Reports (Without Print Details)

GitCommitsReportGenerator(list_files_to_read=list_files_to_read)

from git_history_analyzer import GitCommitsReportGenerator

# Example usage
list_files_to_read = ['C:\\Users\\USUARIO\\Documents\\satellite_notifier\\main.py',
                      'C:\\Users\\USUARIO\\Documents\\satellite_notifier\\.github\workflows\\main.yml']

GitCommitsReportGenerator(list_files_to_read=list_files_to_read)

Example Output - log_history report (Without Print Details)

Alt text

git_blame_report

git_log_history_report

Contributing

Contributions are welcome! Please fork the repository and submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

Project Link: GitHub Repository

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

git_history_analyzer-0.0.5.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

git_history_analyzer-0.0.5-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file git_history_analyzer-0.0.5.tar.gz.

File metadata

  • Download URL: git_history_analyzer-0.0.5.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.7

File hashes

Hashes for git_history_analyzer-0.0.5.tar.gz
Algorithm Hash digest
SHA256 866d159701bf2660cffa021d29948b8c137f3d234d36a9a48913cae69c257398
MD5 426e0e295e55dc36ed81b671dfbc6ada
BLAKE2b-256 ce5763a5f8e64200d9c0bdc8372d4224f9692c34460cf02413f2d33c0da716d4

See more details on using hashes here.

File details

Details for the file git_history_analyzer-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for git_history_analyzer-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9f2bcfe52070fc1ddb7fe8f77c76262f449472db909a6b8f2f98d18df4913e24
MD5 d6c5824579b5635860b3eab566b6484a
BLAKE2b-256 41cdce2eb712ba8b5a3c5ab8cf237565e298a5e084700e873dfbba9b86d9ddfb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page