Der Befehl git-reflog zeigt standardmäßig nicht neben jedem Eintrag ein Datum an, was mir als seltsames Versehen erscheint. Ich denke das wäre sehr hilfreich.
Gibt es Befehlszeilenoptionen oder andere Optimierungen, mit denen angezeigt werden kann, wann jeder Reflog-Eintrag hinzugefügt wurde? Die Manpage erscheint nicht ...
git
git-reflog
reflog
Andrew Ferrier
quelle
quelle
git reflog --format='%C(auto)%h %<|(17)%gd %C(blue)%ci%C(reset) %s'
. Ich habe einen Alias dafür hinzugefügt: github.com/blueyed/dotfiles/commit/…--date=iso
Befehl im Reflog zeigt an, wann dieser Reflog-Eintrag erstellt wurde, nicht den Zeitpunkt des Commits. Schätzen Sie immer noch Ihren Alias, da ich ihn verwendet habe, um ein hübscheres Reflog zu erstellen.Sie können die
--walk-reflogs
Variante verwenden vongit log
:Dies ist standardmäßig ziemlich ausführlich und gibt unter anderem das Datum aus. Sie können es mit dem Standardflag formatieren
--pretty=
.Sie können den Befehl reflog auch direkt mit dem
--pretty=
Flag verwenden, um die Ausgabe zu formatieren.%cd
Zeigt im obigen Format das Festschreibungsdatum links von der normalen Reflog-Ausgabe an.quelle
%cd
, zeigt das Datum des Commits an, auf das der Reflog leider zeigt, was nicht das ist, wonach ich (oder das OP) strebe: Wir wollen das Datum des Reflog-Eintrags.git log --walk-reflogs --date=iso
habe gerade meinen Tag gemachtSie müssen ein benutzerdefiniertes Format verwenden:
Im obigen Format
%h
ist dies der Commit-Hash,%cr
das relative Committer-Datum,%gs
das Reflog-Subjekt und%s
das Commit-Subjekt. In den Git-Log-Dokumenten finden Sie weitere mögliche Platzhalter. Wenn Sie beispielsweise%ci
anstelle von verwenden,%cr
werden absolute Festschreibungsdaten angezeigt.Sie können dies in Ihrer ~ / .gitconfig in einem benutzerdefinierten
pretty
Format speichern und über einen Alias darauf verweisen:quelle
%gd
nicht das gleiche Datum wie@{now}
angezeigt wird. Bei der Suche im Reflog kann es sehr wichtig sein, die genaue Zeit zu kennen ("Ich weiß, dass es um 8:57 Uhr im richtigen Zustand war", zum Beispiel).cr
,ci
um den vollständigen Zeitstempel jeder Aktion zu erhalten:git reflog --format='%C(auto)%h %<|(20)%gd %C(blue)%ci%C(reset) %gs (%s)'
Sagen Sie
git
in welchem Format, entweder gezähltereflog
Einträge oder zeitgesteuertereflog
Einträge, dhquelle
{}
, aber glücklicherweise funktioniert diese Technik auch mit--date=iso
.Hinweis Git 2.10 (Q3 2016) verbessert die Dokumentation zum Datum mit
git reflog
.Siehe Commit 642833d , Commit 1a2a1e8 (27. Juli 2016) und Commit d38c7b2 , Commit 522259d , Commit 83c9f95 , Commit 2b68222 (22. Juli 2016) von Jeff King (
peff
) .Mit freundlicher Unterstützung von Jeff King (
peff
) .(Zusammengeführt von Junio C Hamano -
gitster
- in Commit 0d32799 , 08. August 2016)Die
rev-list
Optionen werden aktualisiert :Es enthält : - ein Update über
--date=raw
:Und eine neue Option:
--date=unix
quelle