The previous .mailmap example made it seem like .mailmap files are only useful for commits with a wrong address for an author, when they are about fixing the real name. Explained this better in the text, and replaced the existing example with a new one that hopefully makes things clearer. --- Documentation/git-shortlog.txt | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 deletions(-) diff --git a/Documentation/git-shortlog.txt b/Documentation/git-shortlog.txt index 7ccf31c..69e10a4 100644 --- a/Documentation/git-shortlog.txt +++ b/Documentation/git-shortlog.txt @@ -48,15 +48,32 @@ OPTIONS FILES ----- -If the file `.mailmap` exists, it will be used for mapping author -email addresses to a real author name. One mapping per line, first -the author name followed by the email address enclosed by -'<' and '>'. Use hash '#' for comments. Example: +If a file `.mailmap` exists in the toplevel directory of the repository, +it will be used for mapping author email addresses to a canonical real +name. This can be used to coalesce together commits by the same person +where their name was spelled differently (whether with the same email +address or not). + +The format of the file is one mapping per line, first the desired author +name followed by the email address enclosed by '<' and '>'. Use hash '#' +for comments. For example, if your history contains commits by these +committers: + +------------ +Author: Joe Developer <joe@xxxxxxxxxx> +Author: Joe R. Developer <joe@xxxxxxxxxx> +Author: Jane Doe <jane@xxxxxxxxxxxxx> +Author: Jane Doe <jane@laptop.(none)> +Author: Jane D. <jane@desktop.(none)> +------------ + +Then a proper `.mailmap` file would be: ------------ -# Keep alphabetized -Adam Morrow <adam@xxxxxxxxxxxxxxxxxxxxx> -Eve Jones <eve@laptop.(none)> +# 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. +Jane Doe <jane@desktop.(none)> +Joe R. Developer <joe@xxxxxxxxxx> ------------ Author -- 1.6.1 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html