Git
.mailmap-bestand: geassocieerde bijdrager en e-mailaliassen
Zoeken…
Syntaxis
- # Vervang alleen e-mailadressen
<[email protected]> <[email protected]> - # Vervang naam door e-mailadres
Bijdrager <[email protected]> - # Meerdere aliassen samenvoegen onder één naam en e-mail
# Merk op dat dit niet 'Other <[email protected]>' zal associëren.
Bijdrager <[email protected]> <[email protected]> Bijdrager <[email protected]>
Opmerkingen
Een .mailmap
bestand kan in elke teksteditor worden gemaakt en is gewoon een tekstbestand met optionele namen van bijdragers, primaire e-mailadressen en hun aliassen. het moet in de root van het project worden geplaatst, naast de .git
map.
Houd er rekening mee dat dit alleen de visuele uitvoer van opdrachten zoals git shortlog
of git log --use-mailmap
. Dit zal de commit-geschiedenis niet herschrijven of commits met verschillende namen en / of e-mailadressen voorkomen.
Om commits te voorkomen op basis van informatie zoals e-mailadressen, moet je in plaats daarvan git hooks gebruiken.
Bijdragers samenvoegen door aliassen om het aantal vastleggingen in shortlog te tonen.
Wanneer bijdragers toevoegen aan een project vanaf verschillende machines of besturingssystemen, kan het gebeuren dat ze hiervoor verschillende e-mailadressen of namen gebruiken, waardoor bijdragerslijsten en statistieken worden gefragmenteerd.
Het uitvoeren van git shortlog -sn
om een lijst met bijdragers en het aantal commits door hen te krijgen, kan de volgende uitvoer opleveren:
Patrick Rothfuss 871
Elizabeth Moon 762
E. Moon 184
Rothfuss, Patrick 90
Deze fragmentatie / ontkoppeling kan worden aangepast door een eenvoudig tekstbestand .mailmap
met e- .mailmap
bieden.
Alle namen en e-mailadressen die op één regel staan, worden respectievelijk aan de eerstgenoemde entiteit gekoppeld.
Voor het bovenstaande voorbeeld kan een afbeelding er als volgt uitzien:
Patrick Rothfuss <[email protected]> Rothfuss, Patrick <[email protected]>
Elizabeth Moon <[email protected]> E. Moon <[email protected]>
Zodra dit bestand in de root van het project bestaat, zal het opnieuw uitvoeren van git shortlog -sn
een verkorte lijst opleveren:
Patrick Rothfuss 961
Elizabeth Moon 946