Add mailmap.file as configurational option for mailmap location
[git/git.git] / Documentation / git-shortlog.txt
1 git-shortlog(1)
2 ===============
3
4 NAME
5 ----
6 git-shortlog - Summarize 'git-log' output
7
8 SYNOPSIS
9 --------
10 [verse]
11 git log --pretty=short | 'git shortlog' [-h] [-n] [-s] [-e] [-w]
12 git shortlog [-n|--numbered] [-s|--summary] [-e|--email] [-w[<width>[,<indent1>[,<indent2>]]]] [<committish>...]
13
14 DESCRIPTION
15 -----------
16 Summarizes 'git-log' output in a format suitable for inclusion
17 in release announcements. Each commit will be grouped by author and
18 the first line of the commit message will be shown.
19
20 Additionally, "[PATCH]" will be stripped from the commit description.
21
22 OPTIONS
23 -------
24
25 -h::
26 --help::
27 Print a short usage message and exit.
28
29 -n::
30 --numbered::
31 Sort output according to the number of commits per author instead
32 of author alphabetic order.
33
34 -s::
35 --summary::
36 Suppress commit description and provide a commit count summary only.
37
38 -e::
39 --email::
40 Show the email address of each author.
41
42 -w[<width>[,<indent1>[,<indent2>]]]::
43 Linewrap the output by wrapping each line at `width`. The first
44 line of each entry is indented by `indent1` spaces, and the second
45 and subsequent lines are indented by `indent2` spaces. `width`,
46 `indent1`, and `indent2` default to 76, 6 and 9 respectively.
47
48 FILES
49 -----
50
51 If a file `.mailmap` exists at the toplevel of the repository, or at the
52 location pointed to by the log.mailmap configuration option,
53 it is used to map an author email address to a canonical real name. This
54 can be used to coalesce together commits by the same person where their
55 name was spelled differently (whether with the same email address or
56 not).
57
58 Each line in the file consists, in this order, of the canonical real name
59 of an author, whitespace, and an email address (enclosed by '<' and '>')
60 to map to the name. Use hash '#' for comments, either on their own line,
61 or after the email address.
62
63 A canonical name may appear in more than one line, associated with
64 different email addresses, but it doesn't make sense for a given address
65 to appear more than once (if that happens, a later line overrides the
66 earlier ones).
67
68 So, for example, if your history contains commits by two authors, Jane
69 and Joe, whose names appear in the repository under several forms:
70
71 ------------
72 Joe Developer <joe@example.com>
73 Joe R. Developer <joe@example.com>
74 Jane Doe <jane@example.com>
75 Jane Doe <jane@laptop.(none)>
76 Jane D. <jane@desktop.(none)>
77 ------------
78
79 Then, supposing Joe wants his middle name initial used, and Jane prefers
80 her family name fully spelled out, a proper `.mailmap` file would look like:
81
82 ------------
83 # Note how we don't need an entry for <jane@laptop.(none)>, because the
84 # real name of that author is correct already, and coalesced directly.
85 Jane Doe <jane@desktop.(none)>
86 Joe R. Developer <joe@example.com>
87 ------------
88
89 Author
90 ------
91 Written by Jeff Garzik <jgarzik@pobox.com>
92
93 Documentation
94 --------------
95 Documentation by Junio C Hamano.
96
97 GIT
98 ---
99 Part of the linkgit:git[1] suite