tj.git-extras/man/git-changelog.1
2015-04-27 15:24:13 +08:00

139 lines
3.4 KiB
Groff

.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
.TH "GIT\-CHANGELOG" "1" "April 2015" "" ""
.
.SH "NAME"
\fBgit\-changelog\fR \- Generate a changelog report
.
.SH "SYNOPSIS"
\fBgit\-changelog\fR [options] [<file>]
.
.br
\fBgit\-changelog\fR {\-h | \-\-help | ?}
.
.SH "DESCRIPTION"
Generates a changelog from git(1) tags (annotated or lightweight) and commit messages\. Existing changelog files with filenames that begin with \fIChange\fR or \fIHistory\fR will be identified automatically with a case insensitive match pattern and existing content will be appended to the new output generated\-\-this behavior can be disabled by specifying the prune option (\-p|\-\-prune\-old)\. The generated file will be opened in \fB$EDITOR\fR when set\.
.
.P
If no tags exist, then all commits are output; if tags exist, then only the most\-recent commits are output up to the last identified tag\. This behavior can be changed by specifing one or both of the range options (\-f|\-\-final\-tag and \-s|\-\-start\-tag)\.
.
.SH "OPTIONS"
<file>
.
.P
The name of the output file\. By default the new file will be \fIHistory\.md\fR unless an existing changelog is detected in which case the existing file will be updated\.
.
.P
\-a, \-\-all
.
.P
Retrieve all commits\. Ignores \-s|\-\-start\-tag and \-f|\-\-final\-tag options (if set)\.
.
.P
\-l, \-\-list
.
.P
Show commits in list format (without titles, dates)\.
.
.P
\-t, \-\-tag
.
.P
Specify a tag label to use for most\-recent (untagged) commits\.
.
.P
\-f, \-\-final\-tag
.
.P
When specifying a range, the newest tag at which point commit retrieval will end\. Commits will be returned from the very first commit until the final tag unless a start tag is also specified\.
.
.P
\-s, \-\-start\-tag
.
.P
When specifying a range, the oldest tag to retrieve commits from\. Commits will be returned from the start tag to now unless a final tag is also specified\.
.
.P
\-n, \-\-no\-merges
.
.P
Filters out merge commits (commits with more than 1 parent) from generated changelog\.
.
.P
\-p, \-\-prune\-old
.
.P
Replace existing changelog entirely with newly generated content, thereby disabling the default behavior of appending the content of any detected changelog to the end of newly generated content\.
.
.P
\-x, \-\-stdout
.
.P
Write output to stdout instead of to a new changelog file\.
.
.P
\-h, \-\-help, ?
.
.P
Show a help message with basic usage information\.
.
.SH "EXAMPLES"
.
.TP
Updating existing file or creating a new \fIHistory\.md\fR file with pretty formatted output:
.
.IP
$ git changelog
.
.TP
Listing commits from the current version:
.
.IP
$ git changelog \-\-list
.
.TP
Listing a range of commits from 2\.1\.0 to now:
.
.IP
$ git changelog \-\-list \-\-start\-tag 2\.1\.0
.
.TP
Listing a pretty formatted version of the same:
.
.IP
$ git changelog \-\-start\-tag 2\.1\.0
.
.TP
Listing a range of commits from initial commit to 2\.1\.0:
.
.IP
$ git changelog \-\-list \-\-final\-tag 2\.1\.0
.
.TP
Listing a pretty formatted range of commits between 0\.5\.0 and 1\.0\.0:
.
.IP
$ git changelog \-\-start\-tag 0\.5\.0 \-\-final\-tag 1\.0\.0
.
.TP
Specifying a file for output:
.
.IP
$ git changelog ChangeLog\.md
.
.TP
And if an existing Changelog exists, replace its contents entirely:
.
.IP
$ git changelog \-\-prune\-old
.
.SH "AUTHOR"
Written by Mark Eissler <\fImark@mixtur\.com\fR>
.
.SH "REPORTING BUGS"
<\fIhttps://github\.com/tj/git\-extras/issues\fR>
.
.SH "SEE ALSO"
<\fIhttps://github\.com/tj/git\-extras\fR>