.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "GITSTATS 1" .TH GITSTATS 1 "2015-08-16" "2015.10.03" "User Commands" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" gitstats \- git history statistics generator .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBgitstats\fR [options] .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBgitstats\fR is a statistics generator for \fIgit\fR\|(1) repositories. It examines the repository and produces some interesting statistics from the history of it. Currently \s-1HTML\s0 is the only output format. .SH "OPTIONS" .IX Header "OPTIONS" \&\-c option=value .PP Override a default configuration value. Defaults can be seen by running \fBgitstats\fR without parameters. .SS "Values:" .IX Subsection "Values:" .IP "authors_top" 4 .IX Item "authors_top" How many top authors to show. .IP "commit_begin, commit_end" 4 .IX Item "commit_begin, commit_end" Specify a commit range to generate statistics from. You can specify only commit_end limit statistics to a certain commit or another branch. .IP "linear_linestats" 4 .IX Item "linear_linestats" When enabled, the lines of code statistics are collected from linear history. The downside is that commits of long feature branches appear only at the point where a merge commit is made. .Sp If disabled (old behaviour), the problem is that if two branches contain the same changes (for example, removal of same lines), the statistics get skewed. .Sp Defaults to on. .IP "max_authors" 4 .IX Item "max_authors" How many authors to show in the list of authors. .IP "max_domains" 4 .IX Item "max_domains" How many domains to show in domains by commits. .IP "max_ext_length" 4 .IX Item "max_ext_length" Maximum file extension length. .IP "processes" 4 .IX Item "processes" Number of concurrent processes to use when extracting git repository data. .IP "project_name" 4 .IX Item "project_name" Project name to show on the generated pages. Default is to use basename of the repository directory. .IP "start_date" 4 .IX Item "start_date" Specify a starting date to pass with \-\-since to git. .IP "style" 4 .IX Item "style" \&\s-1CSS\s0 stylesheet to use. .SH "FAQ" .IX Header "FAQ" Q: How do I generate statistics of a non-master branch? .PP A: Use \f(CW\*(C`\-c commit_end=web\*(C'\fR parameter. .PP Q: I have files in my git repository that I would like to exclude from the statistics, how do I do that? .PP A: At the moment the only way is to use \fIgit\-filter\-branch\fR\|(1) to create a temporary repository and generate the statistics from that. .PP Q: How do I merge author information when the same author has made commits using different names or emails ? .PP A: Use git .mailmap feature described in \fB\s-1MAPPING AUTHORS\s0\fR of \fIgit\-shortlog\fR\|(1). .SH "EXAMPLES" .IX Header "EXAMPLES" .ie n .IP "Generates statistics from a git repository in ""foo"" and outputs the result in a directory ""foo_stats"":" 4 .el .IP "Generates statistics from a git repository in \f(CWfoo\fR and outputs the result in a directory \f(CWfoo_stats\fR:" 4 .IX Item "Generates statistics from a git repository in foo and outputs the result in a directory foo_stats:" .Vb 1 \& gitstats foo foo_stats .Ve .IP "As above, but only analyzes the last 10 commits:" 4 .IX Item "As above, but only analyzes the last 10 commits:" .Vb 1 \& gitstats \-c commit_begin=\*(AqHEAD~10\*(Aq foo foo_stats .Ve .SH "AUTHORS" .IX Header "AUTHORS" \&\fBgitstats\fR was written by Heikki Hokkanen and others. .PP See the git repository at https://github.com/hoxu/gitstats for an up-to-date full list of contributors. .SH "WWW" .IX Header "WWW" http://gitstats.sourceforge.net/ .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIgit\fR\|(1)