From 7d48e9e6f77d336376c1a554eeff0590f77e1ee1 Mon Sep 17 00:00:00 2001 From: Marius Storm-Olsen Date: Sun, 8 Feb 2009 15:34:31 +0100 Subject: [PATCH] Move mailmap documentation into separate file Include it directly from git-shortlog.txt, and refer to it from pretty-format.txt. Signed-off-by: Marius Storm-Olsen Signed-off-by: Junio C Hamano --- Documentation/git-blame.txt | 6 + Documentation/git-shortlog.txt | 209 ++++++++---------------- Documentation/{git-shortlog.txt => mailmap.txt} | 69 +------- Documentation/pretty-formats.txt | 8 +- 4 files changed, 81 insertions(+), 211 deletions(-) rewrite Documentation/git-shortlog.txt (65%) copy Documentation/{git-shortlog.txt => mailmap.txt} (59%) diff --git a/Documentation/git-blame.txt b/Documentation/git-blame.txt index fba374d652..6999cf2a65 100644 --- a/Documentation/git-blame.txt +++ b/Documentation/git-blame.txt @@ -184,6 +184,12 @@ there is ever added information (like the commit encoding or extended commit commentary), a blame viewer won't ever care. +MAPPING AUTHORS +--------------- + +include::mailmap.txt[] + + SEE ALSO -------- linkgit:git-annotate[1] diff --git a/Documentation/git-shortlog.txt b/Documentation/git-shortlog.txt dissimilarity index 65% index a0eaab5250..42463a955d 100644 --- a/Documentation/git-shortlog.txt +++ b/Documentation/git-shortlog.txt @@ -1,140 +1,69 @@ -git-shortlog(1) -=============== - -NAME ----- -git-shortlog - Summarize 'git-log' output - -SYNOPSIS --------- -[verse] -git log --pretty=short | 'git shortlog' [-h] [-n] [-s] [-e] [-w] -git shortlog [-n|--numbered] [-s|--summary] [-e|--email] [-w[[,[,]]]] [...] - -DESCRIPTION ------------ -Summarizes 'git-log' output in a format suitable for inclusion -in release announcements. Each commit will be grouped by author and -the first line of the commit message will be shown. - -Additionally, "[PATCH]" will be stripped from the commit description. - -OPTIONS -------- - --h:: ---help:: - Print a short usage message and exit. - --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. - --w[[,[,]]]:: - 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. - -FILES ------ - -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 --- - -The more complex forms are --- - --- -which allows mailmap to replace only the email part of a commit, and --- - Proper Name --- -which allows mailmap to replace both the name and the email of a -commit matching the specified commit email address, and --- - Proper Name Commit Name --- -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 -and Joe, whose names appear in the repository under several forms: - ------------- -Joe Developer -Joe R. Developer -Jane Doe -Jane Doe -Jane D. ------------- - -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: - ------------- -Jane Doe -Joe R. Developer ------------- - -Note how we don't need an entry for , because the -real name of that author is correct already, and coalesced directly. - -Example 2: Your repository contains commits from the following -authors: - ------------- -nick1 -nick2 -nick2 -santa -claus -CTO ------------- - -Then, you might want a `.mailmap` file looking like: ------------- - -Some Dude nick1 -Other Author nick2 -Other Author -Santa Claus ------------- - -Use hash '#' for comments that are either on their own line, or after -the email address. - - -Author ------- -Written by Jeff Garzik - -Documentation --------------- -Documentation by Junio C Hamano. - -GIT ---- -Part of the linkgit:git[1] suite +git-shortlog(1) +=============== + +NAME +---- +git-shortlog - Summarize 'git-log' output + +SYNOPSIS +-------- +[verse] +git log --pretty=short | 'git shortlog' [-h] [-n] [-s] [-e] [-w] +git shortlog [-n|--numbered] [-s|--summary] [-e|--email] [-w[[,[,]]]] [...] + +DESCRIPTION +----------- +Summarizes 'git-log' output in a format suitable for inclusion +in release announcements. Each commit will be grouped by author and +the first line of the commit message will be shown. + +Additionally, "[PATCH]" will be stripped from the commit description. + +OPTIONS +------- + +-h:: +--help:: + Print a short usage message and exit. + +-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. + +-w[[,[,]]]:: + 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. + + +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[] + + +Author +------ +Written by Jeff Garzik + +Documentation +-------------- +Documentation by Junio C Hamano. + +GIT +--- +Part of the linkgit:git[1] suite diff --git a/Documentation/git-shortlog.txt b/Documentation/mailmap.txt similarity index 59% copy from Documentation/git-shortlog.txt copy to Documentation/mailmap.txt index a0eaab5250..e25b154838 100644 --- a/Documentation/git-shortlog.txt +++ b/Documentation/mailmap.txt @@ -1,59 +1,7 @@ -git-shortlog(1) -=============== - -NAME ----- -git-shortlog - Summarize 'git-log' output - -SYNOPSIS --------- -[verse] -git log --pretty=short | 'git shortlog' [-h] [-n] [-s] [-e] [-w] -git shortlog [-n|--numbered] [-s|--summary] [-e|--email] [-w[[,[,]]]] [...] - -DESCRIPTION ------------ -Summarizes 'git-log' output in a format suitable for inclusion -in release announcements. Each commit will be grouped by author and -the first line of the commit message will be shown. - -Additionally, "[PATCH]" will be stripped from the commit description. - -OPTIONS -------- - --h:: ---help:: - Print a short usage message and exit. - --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. - --w[[,[,]]]:: - 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. - -FILES ------ - 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 @@ -100,7 +48,7 @@ Joe R. Developer ------------ Note how we don't need an entry for , because the -real name of that author is correct already, and coalesced directly. +real name of that author is correct already. Example 2: Your repository contains commits from the following authors: @@ -124,17 +72,4 @@ Santa Claus ------------ Use hash '#' for comments that are either on their own line, or after -the email address. - - -Author ------- -Written by Jeff Garzik - -Documentation --------------- -Documentation by Junio C Hamano. - -GIT ---- -Part of the linkgit:git[1] suite +the email address. \ No newline at end of file diff --git a/Documentation/pretty-formats.txt b/Documentation/pretty-formats.txt index 28808b72e7..159390c35a 100644 --- a/Documentation/pretty-formats.txt +++ b/Documentation/pretty-formats.txt @@ -101,18 +101,18 @@ The placeholders are: - '%P': parent hashes - '%p': abbreviated parent hashes - '%an': author name -- '%aN': author name (respecting .mailmap) +- '%aN': author name (respecting .mailmap, see linkgit:git-shortlog[1] or linkgit:git-blame[1]) - '%ae': author email -- '%aE': author email (respecting .mailmap) +- '%aE': author email (respecting .mailmap, see linkgit:git-shortlog[1] or linkgit:git-blame[1]) - '%ad': author date (format respects --date= option) - '%aD': author date, RFC2822 style - '%ar': author date, relative - '%at': author date, UNIX timestamp - '%ai': author date, ISO 8601 format - '%cn': committer name -- '%cN': committer name (respecting .mailmap) +- '%cN': committer name (respecting .mailmap, see linkgit:git-shortlog[1] or linkgit:git-blame[1]) - '%ce': committer email -- '%cE': committer email (respecting .mailmap) +- '%cE': committer email (respecting .mailmap, see linkgit:git-shortlog[1] or linkgit:git-blame[1]) - '%cd': committer date - '%cD': committer date, RFC2822 style - '%cr': committer date, relative -- 2.11.4.GIT