Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.31.1 → 2.34.1 no changes
- 2.31.0 03/15/21
- 2.18.1 → 2.30.2 no changes
- 2.18.0 06/21/18
DESCRIÇÃO
Para cada “Name <user@host>” ou “<user@host>” na linha de
comando ou na entrada padrão (ao utilizar o --stdin
), procure o nome
canônico e o endereço do e-mail da pessoa (consulte "Mapeando os autores"
logo abaixo). Se encontrado, exiba-os; caso contrário, exiba a entrada como
estiver.
SAÍDA
Para cada contato, uma única linha é emitida, finalizada através de uma nova linha. Caso um nome seja informado ou seja desconhecido ao mailmap, “Name <user@host>” é exibido; caso contrário será exibido apenas “<user@host>”.
MAPEANDO AUTORES
Caso o arquivo .mailmap
exista no topo do repositório ou no local apontado
pelas opções da configuração mailmap.file
ou mailmap.blob
, ele será
utilizado para mapear os nomes dos autores e os endereços de email para os
seus respectivos nomes e endereços de email verdadeiros.
No formato simples, cada linha do arquivo consiste no nome real de um autor, espaço e um endereço de email utilizado no commit (delimitado por < and >) mapeando para o nome. Por exemplo:
Nome Próprio <commit@email.xx>
Os formatos mais complexos são:
<proper@email.xx> <commit@email.xx>
o que permite que o mailmap substitua apenas a parte do email de um commit e:
Nome Próprio <proper@email.xx> <commit@email.xx>
o que permite que o mailmap substitua ambos os nomes e o email de um commit correspondente ao endereço de email do commit especificado, e:
Nome Próprio <proper@email.xx> Nome de quem fez o Commit <commit@email.xx>
o que permite que o mailmap substitua ambos os nomes e o email de um commit que corresponda a ambos os nomes de quem fez o commit e com o endereço de email.
Exemplo 1: O seu histórico contém confirmações de dois autores, Jane e Joe, cujos nomes aparecem no repositório de diferentes maneiras:
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)>
Agora, suponha que Joe queira que seu nome do meio seja utilizado no começo
e Jane prefere que o nome de sua família seja escrito por extenso. Um
arquivo .mailmap
apropriado se pareceria com:
Jane Doe <jane@desktop.(none)> Joe R. Developer <joe@example.com>
Observe como não há necessidade de uma entrada para <jane@laptop.(none)>
porque o nome real deste autor já está correto.
Exemplo 2: O seu repositório contém commits dos seguintes autores:
nick1 <bugs@company.xx> nick2 <bugs@company.xx> nick2 <nick2@company.xx> santa <me@company.xx> claus <me@company.xx> CTO <cto@coompany.xx>
Então você pode querer um arquivo .mailmap
parecido com:
<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>
Utilize o sinal de jogo da velha # para comentários que estejam em sua própria linha ou após o endereço de email.
GIT
Parte do conjunto git[1]