Skip to main content

Python GIT tool to check pending changes and get last commit info

Project description

Travis build Coverage Status pypi-version pypi-wheel pypi-format pypi-pyversions pypi-implementation pypi-status Codacy Badge

Python GIT tool to check pending changes and get last commit info

gitchecker.check_status_and_get_commit_info() checks if there is any pending changes in GIT repository status and returns the last commit info:

  • sha (string): commit SHA (7 digits length)
  • author (string): author name
  • authored_datetime (datetime): author datetime
  • committer (string): committer name
  • committed_datetime (datetime): committer datetime

By default it raises an Exception if there are any pending changes but it can be configured to only show a warning instead.

Requirements

Install

pip install gitchecker

Demo Usage

import gitchecker
commit_info = \
    gitchecker.check_status_and_get_commit_info(repo_path="",
                                                warning_instead_of_error=False,
                                                ignore_untracked_files=False,
                                                ignore_files_regex=None,
                                                logger=None)

print("commit", commit_info)

The displayed values of the parameters are the default ones.

If a logger is provided, it will be used only if it has an error() or warning() method. The required method depends on the value of warning_instead_of_error. If no logger provided or no proper log function exists in logger , print() will be used instead.

Ignoring untracked files (ignore_untracked_files=True) or Ignoring by regex (ignore_files_regex="regex") will ignore them completely, not raising errors and not showing warnings.

Testing

The GIT status must be clean to run functional test.

python setup.py test

To run only unit tests, use:

python -m pytest --pep8 --cov=gitchecker --cov-report=term-missing --cov-report=html -vv -x -k unit

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

gitchecker-2.0.0.tar.gz (3.9 kB view hashes)

Uploaded Source

Built Distribution

gitchecker-2.0.0-py3-none-any.whl (4.5 kB view hashes)

Uploaded Python 3

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