Ich verwende diese beiden .gitconfig-Einstellungen:
[log]
date = relative
[format]
pretty = format:%h %Cblue%ad%Creset %ae %Cgreen%s%Creset
%ad ist das Datum des Autors, das überschrieben werden kann durch --date
oder die in der Stanza [log] in .gitconfig angegebene Option. Ich mag das relative Datum, weil es ein unmittelbares Gefühl dafür vermittelt, wann etwas übertragen wurde. Die Ausgabe sieht so aus:
6c3e1a2 2 hours ago you@me.com lsof is a dependency now.
0754f18 11 hours ago you@me.com Properly unmount, so detaching works.
336a3ac 13 hours ago you@me.com Show ami registration command if auto register fails
be2ad45 17 hours ago you@me.com Fixes #6. Sao Paolo region is included as well.
5aed68e 17 hours ago you@me.com Shorten while loops
Das alles ist natürlich in Farbe, so dass man die verschiedenen Teile eines Baumstamms leicht unterscheiden kann. Außerdem ist dies die Standardeinstellung, wenn Sie Folgendes eingeben git log
wegen des Abschnitts [format].
2014 UPDATE: Da git jetzt padding unterstützt, habe ich eine nette Ergänzung zur obigen Version:
pretty = format:%C(yellow)%h %Cblue%>(12)%ad %Cgreen%<(7)%aN%Cred%d %Creset%s
Dadurch werden die relativen Daten rechtsbündig und die Namen der Committer linksbündig angeordnet, so dass ein spaltenartiges Aussehen entsteht.
Bildschirmfoto
AKTUALISIERUNG 2016: Da die GPG-Signatur von Commits immer beliebter wird, dachte ich, ich aktualisiere diesen Beitrag mit einer Version, die eine Signaturprüfung enthält (im Screenshot ist das der magentafarbene Buchstabe direkt nach dem Commit). Eine kurze Erklärung des Flags:
%G?: zeigt "G" für eine gute (gültige) Signatur, "B" für eine schlechte Signatur, "U" für eine gute Signatur mit unbekannter Gültigkeit und "N" für keine Signatur
Weitere Änderungen sind:
- Farben werden nun entfernt, wenn die Ausgabe auf etwas anderes als das tty erfolgt (was für grepping usw. nützlich ist)
git log -g
enthält jetzt den Reflog-Selektor.
- Sparen Sie 2 Parens bei refnames und setzen Sie sie ans Ende (um die Spaltenausrichtung beizubehalten)
- Schneiden Sie relative Daten ab, wenn sie zu lang sind (z. B.
3 years, 4..
)
- Kürzen Sie die Namen von Commitern (könnte für manche Leute etwas kurz sein, ändern Sie einfach die
%<(7,trunc)
oder sehen Sie sich die git .mailmap-Funktion zur Verkürzung von Kommitatorennamen)
Hier ist die Konfiguration:
pretty = format:%C(auto,yellow)%h%C(auto,magenta)% G? %C(auto,blue)%>(12,trunc)%ad %C(auto,green)%<(7,trunc)%aN%C(auto,reset)%s%C(auto,red)% gD% D
Alles in allem wird die Spaltenausrichtung nun viel besser beibehalten, allerdings auf Kosten einiger (hoffentlich) nutzloser Zeichen. Fühlen Sie sich frei zu bearbeiten, wenn Sie irgendwelche Verbesserungen haben, ich würde gerne die Farbe der Nachricht davon abhängig machen, ob eine Übergabe signiert ist, aber es scheint nicht so, als ob das momentan möglich ist.
Bildschirmfoto