2005-08-15 08:24:36 +08:00
|
|
|
git-shortlog(1)
|
|
|
|
===============
|
|
|
|
|
|
|
|
NAME
|
|
|
|
----
|
2008-07-03 13:28:15 +08:00
|
|
|
git-shortlog - Summarize 'git-log' output
|
2005-08-15 08:24:36 +08:00
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
--------
|
2007-04-19 06:10:22 +08:00
|
|
|
[verse]
|
2008-06-30 14:09:04 +08:00
|
|
|
git log --pretty=short | 'git shortlog' [-h] [-n] [-s] [-e] [-w]
|
|
|
|
git shortlog [-n|--numbered] [-s|--summary] [-e|--email] [-w[<width>[,<indent1>[,<indent2>]]]] [<committish>...]
|
2005-08-15 08:24:36 +08:00
|
|
|
|
|
|
|
DESCRIPTION
|
|
|
|
-----------
|
2008-07-03 13:41:41 +08:00
|
|
|
Summarizes 'git-log' output in a format suitable for inclusion
|
2006-10-07 03:39:09 +08:00
|
|
|
in release announcements. Each commit will be grouped by author and
|
2006-06-08 02:32:33 +08:00
|
|
|
the first line of the commit message will be shown.
|
|
|
|
|
|
|
|
Additionally, "[PATCH]" will be stripped from the commit description.
|
|
|
|
|
2006-10-07 03:39:09 +08:00
|
|
|
OPTIONS
|
|
|
|
-------
|
|
|
|
|
2008-06-08 09:36:09 +08:00
|
|
|
-h::
|
|
|
|
--help::
|
2006-10-07 03:39:09 +08:00
|
|
|
Print a short usage message and exit.
|
|
|
|
|
2008-06-08 09:36:09 +08:00
|
|
|
-n::
|
|
|
|
--numbered::
|
2006-10-07 03:39:09 +08:00
|
|
|
Sort output according to the number of commits per author instead
|
|
|
|
of author alphabetic order.
|
|
|
|
|
2008-06-08 09:36:09 +08:00
|
|
|
-s::
|
|
|
|
--summary::
|
2007-01-17 23:32:41 +08:00
|
|
|
Suppress commit description and provide a commit count summary only.
|
2006-10-07 03:39:09 +08:00
|
|
|
|
2008-06-08 09:36:09 +08:00
|
|
|
-e::
|
|
|
|
--email::
|
2007-12-11 20:33:12 +08:00
|
|
|
Show the email address of each author.
|
|
|
|
|
2008-04-13 06:38:20 +08:00
|
|
|
-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.
|
|
|
|
|
2006-06-08 02:32:33 +08:00
|
|
|
FILES
|
|
|
|
-----
|
2007-04-19 06:10:22 +08:00
|
|
|
|
2009-02-08 22:34:29 +08:00
|
|
|
If the file `.mailmap` exists at the toplevel of the repository, or at
|
|
|
|
the location pointed to by the mailmap.file configuration option, it
|
|
|
|
is used to map author and committer names and email addresses to
|
|
|
|
canonical real names and email addresses.
|
|
|
|
This mapping can be used to coalesce together commits by the same
|
|
|
|
person where their name and/or email address was spelled differently.
|
|
|
|
|
|
|
|
In the simple form, each line in the file consists of the canonical
|
|
|
|
real name of an author, whitespace, and an email address used in the
|
|
|
|
commit (enclosed by '<' and '>') to map to the name. Thus, looks like
|
|
|
|
this
|
|
|
|
--
|
|
|
|
Proper Name <commit@email.xx>
|
|
|
|
--
|
|
|
|
|
|
|
|
The more complex forms are
|
|
|
|
--
|
|
|
|
<proper@email.xx> <commit@email.xx>
|
|
|
|
--
|
|
|
|
which allows mailmap to replace only the email part of a commit, and
|
|
|
|
--
|
|
|
|
Proper Name <proper@email.xx> <commit@email.xx>
|
|
|
|
--
|
|
|
|
which allows mailmap to replace both the name and the email of a
|
|
|
|
commit matching the specified commit email address, and
|
|
|
|
--
|
|
|
|
Proper Name <proper@email.xx> Commit Name <commit@email.xx>
|
|
|
|
--
|
|
|
|
which allows mailmap to replace both the name and the email of a
|
|
|
|
commit matching both the specified commit name and email address.
|
|
|
|
|
|
|
|
Example 1: Your history contains commits by two authors, Jane
|
2008-12-28 02:23:30 +08:00
|
|
|
and Joe, whose names appear in the repository under several forms:
|
|
|
|
|
|
|
|
------------
|
|
|
|
Joe Developer <joe@example.com>
|
|
|
|
Joe R. Developer <joe@example.com>
|
|
|
|
Jane Doe <jane@example.com>
|
|
|
|
Jane Doe <jane@laptop.(none)>
|
|
|
|
Jane D. <jane@desktop.(none)>
|
|
|
|
------------
|
|
|
|
|
2009-02-08 22:34:29 +08:00
|
|
|
Now suppose that Joe wants his middle name initial used, and Jane
|
|
|
|
prefers her family name fully spelled out. A proper `.mailmap` file
|
|
|
|
would look like:
|
2007-12-24 02:37:01 +08:00
|
|
|
|
|
|
|
------------
|
2009-02-08 22:34:29 +08:00
|
|
|
Jane Doe <jane@desktop.(none)>
|
2009-01-31 00:55:24 +08:00
|
|
|
Joe R. Developer <joe@example.com>
|
2007-12-24 02:37:01 +08:00
|
|
|
------------
|
2005-08-15 08:24:36 +08:00
|
|
|
|
2009-02-08 22:34:29 +08:00
|
|
|
Note how we don't need an entry for <jane@laptop.(none)>, because the
|
|
|
|
real name of that author is correct already, and coalesced directly.
|
|
|
|
|
|
|
|
Example 2: Your repository contains commits from the following
|
|
|
|
authors:
|
|
|
|
|
|
|
|
------------
|
|
|
|
nick1 <bugs@company.xx>
|
|
|
|
nick2 <bugs@company.xx>
|
|
|
|
nick2 <nick2@company.xx>
|
|
|
|
santa <me@company.xx>
|
|
|
|
claus <me@company.xx>
|
|
|
|
CTO <cto@coompany.xx>
|
|
|
|
------------
|
|
|
|
|
|
|
|
Then, you might want a `.mailmap` file looking like:
|
|
|
|
------------
|
|
|
|
<cto@company.xx> <cto@coompany.xx>
|
|
|
|
Some Dude <some@dude.xx> nick1 <bugs@company.xx>
|
|
|
|
Other Author <other@author.xx> nick2 <bugs@company.xx>
|
|
|
|
Other Author <other@author.xx> <nick2@company.xx>
|
|
|
|
Santa Claus <santa.claus@northpole.xx> <me@company.xx>
|
|
|
|
------------
|
|
|
|
|
|
|
|
Use hash '#' for comments that are either on their own line, or after
|
|
|
|
the email address.
|
|
|
|
|
|
|
|
|
2005-08-15 08:24:36 +08:00
|
|
|
Author
|
|
|
|
------
|
|
|
|
Written by Jeff Garzik <jgarzik@pobox.com>
|
|
|
|
|
|
|
|
Documentation
|
|
|
|
--------------
|
|
|
|
Documentation by Junio C Hamano.
|
|
|
|
|
|
|
|
GIT
|
|
|
|
---
|
2008-06-06 15:07:32 +08:00
|
|
|
Part of the linkgit:git[1] suite
|