SYNOPSIS
blamecount [-t] [-e] [-a] [-c] [-?]
OPTIONS
- -t
-
Return a list of contributor statistics, both as lines touched and as percentage of lines in the codebase. This is the default mode.
- -e
-
Report of contributor change bands. The output can fill an Emacs compilation buffer that allows you to step through bands of lines touched by individual authors.
- -a
-
Report commit counts by author.
- -c
-
Report commit counts by committer.
- -?
-
Dump a usage message.
DESCRIPTION
This program uses collects attribution statistics on a codebase. Run it within a Git repository directory.
The specific report is controlled by the option you choose. In its -t abnd -e modes, it uses git blame to gather and report statistics on which author last touched each line in te tip revision. In -a mode it somply reports commit counts by author.
To reduce noise in -t and -e reports, author spans consisting entirely of junk lines are ignored. Thus, percentages may not add up to 100%. Junk lines are empty lines and those which, when stripped, consist of the comment leaders (and trailers) "/*", "*/", "(*", "*)", "*", "//", "<!--", "-→", and "#" alone. Such lines are not ignored when they share a span with non-junk lines.
Files that Git detects to be binary (such as images) are ignored in -t and -e modes. The test used is whether "git ls-files --eol" finds a non-textual eol type for the file. If need be this can be configured on a per-project basis using the gitattributes facility.
The error message "missing metadata - possible git blame bug." indicates that git blame’s reporting format may have changed in a way that confuses blamecount.
REPORTING BUGS
Report bugs to Eric S. Raymond <esr@thyrsus.com>. The project page is at http://catb.org/~esr/blamecount
SEE ALSO
git-blame(1), git-log(1).