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.
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:
pip install git-guiltYou can also clone this repository and run the following from your working copy:
python setup.py installgit-guiltcan 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-guiltcan be used to run periodic audits on the ownership of code in a repo. Middle managers love this stuff!
Please read the docs.
Unit tests and integration tests are run for every commit. git-guilt is tested on Python 2.6, 2.7, 3.3 and 3.4.
git-guilt tries to be Unicode-friendly. There are tests for non-Latin character support in author names, repository paths and terminal output.
git-guilt has only been tested on Linux so far. I expect some work to be needed to port terminal handling code to MacOS X. Support for Microsoft Windows would likely require more work.
