]>
Commit | Line | Data |
---|---|---|
3f971fc4 JH |
1 | git-shortlog(1) |
2 | =============== | |
3f971fc4 JH |
3 | |
4 | NAME | |
5 | ---- | |
0b444cdb | 6 | git-shortlog - Summarize 'git log' output |
3f971fc4 | 7 | |
3f971fc4 JH |
8 | SYNOPSIS |
9 | -------- | |
0ad64fd0 | 10 | [verse] |
133db54d | 11 | 'git shortlog' [<options>] [<revision-range>] [[--] <path>...] |
a8210328 | 12 | git log --pretty=short | 'git shortlog' [<options>] |
3f971fc4 JH |
13 | |
14 | DESCRIPTION | |
15 | ----------- | |
0b444cdb | 16 | Summarizes 'git log' output in a format suitable for inclusion |
52ffe995 | 17 | in release announcements. Each commit will be grouped by author and title. |
74237d62 JF |
18 | |
19 | Additionally, "[PATCH]" will be stripped from the commit description. | |
20 | ||
02646fe5 JN |
21 | If no revisions are passed on the command line and either standard input |
22 | is not a terminal or there is no current branch, 'git shortlog' will | |
23 | output a summary of the log read from standard input, without | |
24 | reference to the current repository. | |
25 | ||
4e27fb06 NP |
26 | OPTIONS |
27 | ------- | |
28 | ||
3240240f SB |
29 | -n:: |
30 | --numbered:: | |
4e27fb06 NP |
31 | Sort output according to the number of commits per author instead |
32 | of author alphabetic order. | |
33 | ||
3240240f SB |
34 | -s:: |
35 | --summary:: | |
23bfbb81 | 36 | Suppress commit description and provide a commit count summary only. |
4e27fb06 | 37 | |
3240240f SB |
38 | -e:: |
39 | --email:: | |
6508bb75 JK |
40 | Show the email address of each author. |
41 | ||
efc39d6d | 42 | --format[=<format>]:: |
60037249 JN |
43 | Instead of the commit subject, use some other information to |
44 | describe each commit. '<format>' can be any string accepted | |
6cf378f0 | 45 | by the `--format` option of 'git log', such as '* [%h] %s'. |
60037249 JN |
46 | (See the "PRETTY FORMATS" section of linkgit:git-log[1].) |
47 | ||
48 | Each pretty-printed commit will be rewrapped before it is shown. | |
49 | ||
251554c2 JK |
50 | --date=<format>:: |
51 | Show dates formatted according to the given date string. (See | |
52 | the `--date` option in the "Commit Formatting" section of | |
3dc95e09 | 53 | linkgit:git-log[1]). Useful with `--group=format:<format>`. |
251554c2 | 54 | |
92338c45 JK |
55 | --group=<type>:: |
56 | Group commits based on `<type>`. If no `--group` option is | |
57 | specified, the default is `author`. `<type>` is one of: | |
58 | + | |
63d24fa0 | 59 | -- |
92338c45 JK |
60 | - `author`, commits are grouped by author |
61 | - `committer`, commits are grouped by committer (the same as `-c`) | |
47beb37b JK |
62 | - `trailer:<field>`, the `<field>` is interpreted as a case-insensitive |
63 | commit message trailer (see linkgit:git-interpret-trailers[1]). For | |
64 | example, if your project uses `Reviewed-by` trailers, you might want | |
65 | to see who has been reviewing with | |
66 | `git shortlog -ns --group=trailer:reviewed-by`. | |
3dc95e09 TB |
67 | - `format:<format>`, any string accepted by the `--format` option of |
68 | 'git log'. (See the "PRETTY FORMATS" section of | |
69 | linkgit:git-log[1].) | |
47beb37b JK |
70 | + |
71 | Note that commits that do not include the trailer will not be counted. | |
72 | Likewise, commits with multiple trailers (e.g., multiple signoffs) may | |
f17b0b99 JK |
73 | be counted more than once (but only once per unique trailer value in |
74 | that commit). | |
47beb37b | 75 | + |
56d5dde7 JK |
76 | Shortlog will attempt to parse each trailer value as a `name <email>` |
77 | identity. If successful, the mailmap is applied and the email is omitted | |
78 | unless the `--email` option is specified. If the value cannot be parsed | |
79 | as an identity, it will be taken literally and completely. | |
63d24fa0 JK |
80 | -- |
81 | + | |
82 | If `--group` is specified multiple times, commits are counted under each | |
83 | value (but again, only once per unique value in that commit). For | |
84 | example, `git shortlog --group=author --group=trailer:co-authored-by` | |
85 | counts both authors and co-authors. | |
92338c45 | 86 | |
03f40829 JK |
87 | -c:: |
88 | --committer:: | |
92338c45 | 89 | This is an alias for `--group=committer`. |
03f40829 | 90 | |
55ef8a46 JH |
91 | -w[<width>[,<indent1>[,<indent2>]]]:: |
92 | Linewrap the output by wrapping each line at `width`. The first | |
93 | line of each entry is indented by `indent1` spaces, and the second | |
94 | and subsequent lines are indented by `indent2` spaces. `width`, | |
95 | `indent1`, and `indent2` default to 76, 6 and 9 respectively. | |
0e82bd04 JK |
96 | + |
97 | If width is `0` (zero) then indent the lines of the output without wrapping | |
98 | them. | |
55ef8a46 | 99 | |
133db54d | 100 | <revision-range>:: |
46b2a46d | 101 | Show only commits in the specified revision range. When no |
133db54d | 102 | <revision-range> is specified, it defaults to `HEAD` (i.e. the |
46b2a46d RR |
103 | whole history leading to the current commit). `origin..HEAD` |
104 | specifies all the commits reachable from the current commit | |
105 | (i.e. `HEAD`), but not from `origin`. For a complete list of | |
133db54d | 106 | ways to spell <revision-range>, see the "Specifying Ranges" |
46b2a46d RR |
107 | section of linkgit:gitrevisions[7]. |
108 | ||
933c758c | 109 | [--] <path>...:: |
46b2a46d RR |
110 | Consider only commits that are enough to explain how the files |
111 | that match the specified paths came to be. | |
112 | + | |
6955047f | 113 | Paths may need to be prefixed with `--` to separate them from |
46b2a46d | 114 | options or the revision range, when confusion arises. |
7d48e9e6 | 115 | |
461caf3e PY |
116 | :git-shortlog: 1 |
117 | include::rev-list-options.txt[] | |
118 | ||
7d48e9e6 MSO |
119 | MAPPING AUTHORS |
120 | --------------- | |
121 | ||
42957af0 | 122 | See linkgit:gitmailmap[5]. |
0925ce4d | 123 | |
a38cb987 JK |
124 | Note that if `git shortlog` is run outside of a repository (to process |
125 | log contents on standard input), it will look for a `.mailmap` file in | |
126 | the current directory. | |
127 | ||
3f971fc4 JH |
128 | GIT |
129 | --- | |
9e1f0a85 | 130 | Part of the linkgit:git[1] suite |