]>
Commit | Line | Data |
---|---|---|
7d48e9e6 | 1 | If the file `.mailmap` exists at the toplevel of the repository, or at |
d5422b0c JK |
2 | the location pointed to by the mailmap.file or mailmap.blob |
3 | configuration options, it | |
7d48e9e6 MSO |
4 | is used to map author and committer names and email addresses to |
5 | canonical real names and email addresses. | |
6 | ||
7 | In the simple form, each line in the file consists of the canonical | |
8 | real name of an author, whitespace, and an email address used in the | |
b89510f0 | 9 | commit (enclosed by '<' and '>') to map to the name. For example: |
7d48e9e6 MSO |
10 | -- |
11 | Proper Name <commit@email.xx> | |
12 | -- | |
13 | ||
b89510f0 | 14 | The more complex forms are: |
7d48e9e6 MSO |
15 | -- |
16 | <proper@email.xx> <commit@email.xx> | |
17 | -- | |
b89510f0 | 18 | which allows mailmap to replace only the email part of a commit, and: |
7d48e9e6 MSO |
19 | -- |
20 | Proper Name <proper@email.xx> <commit@email.xx> | |
21 | -- | |
22 | which allows mailmap to replace both the name and the email of a | |
b89510f0 | 23 | commit matching the specified commit email address, and: |
7d48e9e6 MSO |
24 | -- |
25 | Proper Name <proper@email.xx> Commit Name <commit@email.xx> | |
26 | -- | |
27 | which allows mailmap to replace both the name and the email of a | |
28 | commit matching both the specified commit name and email address. | |
29 | ||
30 | Example 1: Your history contains commits by two authors, Jane | |
31 | and Joe, whose names appear in the repository under several forms: | |
32 | ||
33 | ------------ | |
34 | Joe Developer <joe@example.com> | |
35 | Joe R. Developer <joe@example.com> | |
36 | Jane Doe <jane@example.com> | |
37 | Jane Doe <jane@laptop.(none)> | |
38 | Jane D. <jane@desktop.(none)> | |
39 | ------------ | |
40 | ||
41 | Now suppose that Joe wants his middle name initial used, and Jane | |
42 | prefers her family name fully spelled out. A proper `.mailmap` file | |
43 | would look like: | |
44 | ||
45 | ------------ | |
46 | Jane Doe <jane@desktop.(none)> | |
47 | Joe R. Developer <joe@example.com> | |
48 | ------------ | |
49 | ||
f430ed8b | 50 | Note how there is no need for an entry for `<jane@laptop.(none)>`, because the |
b89510f0 | 51 | real name of that author is already correct. |
7d48e9e6 MSO |
52 | |
53 | Example 2: Your repository contains commits from the following | |
54 | authors: | |
55 | ||
56 | ------------ | |
57 | nick1 <bugs@company.xx> | |
58 | nick2 <bugs@company.xx> | |
59 | nick2 <nick2@company.xx> | |
60 | santa <me@company.xx> | |
61 | claus <me@company.xx> | |
62 | CTO <cto@coompany.xx> | |
63 | ------------ | |
64 | ||
b89510f0 | 65 | Then you might want a `.mailmap` file that looks like: |
7d48e9e6 MSO |
66 | ------------ |
67 | <cto@company.xx> <cto@coompany.xx> | |
68 | Some Dude <some@dude.xx> nick1 <bugs@company.xx> | |
69 | Other Author <other@author.xx> nick2 <bugs@company.xx> | |
70 | Other Author <other@author.xx> <nick2@company.xx> | |
71 | Santa Claus <santa.claus@northpole.xx> <me@company.xx> | |
72 | ------------ | |
73 | ||
74 | Use hash '#' for comments that are either on their own line, or after | |
b89510f0 | 75 | the email address. |