Start·Terminal-Befehle

git reflog

git

Aufruf

git reflog [show] [<ref>]

Merkt sich jede Position von HEAD und Ihren Branches — dort finden sich Commits, die durch reset --hard oder einen gelöschten Branch verloren gingen; Einträge verfallen standardmäßig nach 90 Tagen und existieren nur lokal.

Häufige Optionen

OptionBedeutung
show <ref>the positions of one branch instead of HEAD
--date=isoreal timestamps instead of relative ones
-n <n>only the last n entries
HEAD@{n}the commit HEAD pointed at n moves ago
expire --expire=now --allwipe the log, which also gives up the safety net

Beispiele

git reflog

every position HEAD has had, newest first

git reflog --date=iso -n 20

the last twenty moves with real dates

git reset --hard HEAD@{1}

undoes the reset you just regretted

Verwirrend ist, dass Rückgängig mehrere Formen hat — den Zeiger eines Branch zu verschieben ist nicht dasselbe wie einen Gegen-Commit zu setzen.

So liest man das

  • Eckige Klammern [ ] markieren einen Teil, den man weglassen kann.
  • Drei Punkte … heißen: mehrere sind erlaubt.
  • Optionen achten auf Groß- und Kleinschreibung — bei manchen Befehlen sind -r und -R verschieden.

Häufige Fragen

Q. Was macht git reflog?

Merkt sich jede Position von HEAD und Ihren Branches — dort finden sich Commits, die durch reset --hard oder einen gelöschten Branch verloren gingen; Einträge verfallen standardmäßig nach 90 Tagen und existieren nur lokal.

Q. Wie gibt man ihn ein?

git reflog [show] [<ref>] — eckige Klammern markieren, was wegfallen darf.

Q. Wie viele Optionen lohnen sich?

Hier stehen 5; die vollständige Liste steht in man git. Der Befehl gehört zu git.

Verwandte Befehle

man-Seite: man git-reflog