summaryrefslogtreecommitdiff
path: root/Documentation/git-shortlog.txt
blob: 6496d313c10d6a05bb698ee9bc0ed4752b2ebee4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
git-shortlog(1)
===============

NAME
----
git-shortlog - Summarize 'git log' output

SYNOPSIS
--------
[verse]
'git shortlog' [<options>] [<revision range>] [[--] <path>...]
git log --pretty=short | 'git shortlog' [<options>]

DESCRIPTION
-----------
Summarizes 'git log' output in a format suitable for inclusion
in release announcements. Each commit will be grouped by author and title.

Additionally, "[PATCH]" will be stripped from the commit description.

If no revisions are passed on the command line and either standard input
is not a terminal or there is no current branch, 'git shortlog' will
output a summary of the log read from standard input, without
reference to the current repository.

OPTIONS
-------

-n::
--numbered::
	Sort output according to the number of commits per author instead
	of author alphabetic order.

-s::
--summary::
	Suppress commit description and provide a commit count summary only.

-e::
--email::
	Show the email address of each author.

--format[=<format>]::
	Instead of the commit subject, use some other information to
	describe each commit.  '<format>' can be any string accepted
	by the `--format` option of 'git log', such as '* [%h] %s'.
	(See the "PRETTY FORMATS" section of linkgit:git-log[1].)

	Each pretty-printed commit will be rewrapped before it is shown.

--group=<type>::
	Group commits based on `<type>`. If no `--group` option is
	specified, the default is `author`. `<type>` is one of:
+
 - `author`, commits are grouped by author
 - `committer`, commits are grouped by committer (the same as `-c`)

-c::
--committer::
	This is an alias for `--group=committer`.

-w[<width>[,<indent1>[,<indent2>]]]::
	Linewrap the output by wrapping each line at `width`.  The first
	line of each entry is indented by `indent1` spaces, and the second
	and subsequent lines are indented by `indent2` spaces. `width`,
	`indent1`, and `indent2` default to 76, 6 and 9 respectively.
+
If width is `0` (zero) then indent the lines of the output without wrapping
them.

<revision range>::
	Show only commits in the specified revision range.  When no
	<revision range> is specified, it defaults to `HEAD` (i.e. the
	whole history leading to the current commit).  `origin..HEAD`
	specifies all the commits reachable from the current commit
	(i.e. `HEAD`), but not from `origin`. For a complete list of
	ways to spell <revision range>, see the "Specifying Ranges"
	section of linkgit:gitrevisions[7].

[--] <path>...::
	Consider only commits that are enough to explain how the files
	that match the specified paths came to be.
+
Paths may need to be prefixed with `--` to separate them from
options or the revision range, when confusion arises.

:git-shortlog: 1
include::rev-list-options.txt[]

MAPPING AUTHORS
---------------

The `.mailmap` feature is used to coalesce together commits by the same
person in the shortlog, where their name and/or email address was
spelled differently.

include::mailmap.txt[]

GIT
---
Part of the linkgit:git[1] suite