Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mattboyer/git-guilt
A Python port of Tim Pettersen's git guilt
https://github.com/mattboyer/git-guilt
Last synced: about 1 month ago
JSON representation
A Python port of Tim Pettersen's git guilt
- Host: GitHub
- URL: https://github.com/mattboyer/git-guilt
- Owner: mattboyer
- Created: 2015-01-14T20:56:10.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2020-11-16T07:57:03.000Z (about 4 years ago)
- Last Synced: 2024-11-16T12:19:22.716Z (about 2 months ago)
- Language: Python
- Size: 193 KB
- Stars: 16
- Watchers: 4
- Forks: 4
- Open Issues: 2
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
README
.. image:: https://travis-ci.org/mattboyer/git-guilt.svg?branch=master
:target: https://travis-ci.org/mattboyer/git-guilt.. image:: https://coveralls.io/repos/mattboyer/git-guilt/badge.svg?branch=master
:target: https://coveralls.io/r/mattboyer/git-guilt.. image:: https://landscape.io/github/mattboyer/git-guilt/master/landscape.svg?style=flat
:target: https://landscape.io/github/mattboyer/git-guilt/master
:alt: Code Health.. image:: https://img.shields.io/pypi/v/git-guilt.svg
:target: https://pypi.python.org/pypi/git-guilt/
:alt: Latest Version.. image:: https://img.shields.io/pypi/format/git-guilt.svg
:target: https://pypi.python.org/pypi/git-guilt/
:alt: Download format.. image:: https://img.shields.io/pypi/pyversions/git-guilt.svg
:target: https://pypi.python.org/pypi/git-guilt/
:alt: Supported Python versionsgit-guilt
=========``git-guilt`` is a custom tool written for the `Git `_ Source Code Management system. It aims to provide information regarding the *transfer* of ownership between two revisions of a repository. Think of it as a first-order derivative of `git-blame `_!
``git-guilt`` is a Python port of Tim Pettersen's JavaScript `tool `_ of the same name.
Screenshot
----------.. image:: docs/screenshot.png
Installation
------------``git-guilt`` does not require any dependency beside Python and Git (and `argparse `_ in case your version of Python doesn't include it). To install, simply type:
.. code-block:: bash
$ pip install git-guilt
Why use git-guilt?
------------------- ``git-guilt`` can be used to identify code reviewers. Authors whose overall ownership of the repository *decreases* for a given commit will often have valuable feedback to provide during a code review. Yesterday's design decisions may still be relevant today. And even if they're not, this is a great opportunity to learn from past mistakes!
- Likewise, ``git-guilt`` can be used to run periodic audits on the ownership of code in a repo. Middle managers love this stuff!
Documentation and usage
-----------------------Please `read the docs `_.
Hacking git-guilt
-----------------Once you've `cloned `_ this repository, be sure to install the build-time dependencies and you'll be ready to starting hacking away on your working copy. Please use `tox `_ as your one-stop shop to ensure that all code checks and tests pass on both Python 2 and Python 3 - it's what the continuous integration hook requires for pull requests.
.. code-block:: bash
$ pip install -r requirements.txt
$ toxNotes
-----Unit tests and integration tests are run for every commit. ``git-guilt`` is `tested `_ on Python 2.7, and 3.5.
``git-guilt`` tries to be Unicode-friendly. There are tests for non-Latin character support in author names, repository paths and terminal output.
To-Dos
------``git-guilt`` has only been tested on Linux so far. I expect some work to be needed to port terminal handling code to macOS. Support for Microsoft Windows would likely require more work.