git fsck
git
Aufruf
git fsck [--lost-found] [--unreachable]Prüft die Objektdatenbank und listet Commits, auf die nichts zeigt — der zweite Weg zu verlorener Arbeit nach einem Reset, wenn der Reflog-Eintrag weg ist; es meldet, es repariert nicht.
Häufige Optionen
| Option | Bedeutung |
|---|---|
| --lost-found | write dangling objects into .git/lost-found |
| --unreachable | list objects no ref points at |
| --dangling | list objects nothing at all refers to |
| --full | check packs and alternates too |
| --connectivity-only | skip the expensive object checks |
| --no-reflogs | do not treat reflog entries as roots |
Beispiele
git fsck --lost-foundrecovers commits after a reset when the reflog is gone
git fsck --unreachablelists commits nothing points at any more
git fsck --connectivity-onlya quick structural check on a huge repository
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 fsck?
Prüft die Objektdatenbank und listet Commits, auf die nichts zeigt — der zweite Weg zu verlorener Arbeit nach einem Reset, wenn der Reflog-Eintrag weg ist; es meldet, es repariert nicht.
Q. Wie gibt man ihn ein?
git fsck [--lost-found] [--unreachable] — eckige Klammern markieren, was wegfallen darf.
Q. Wie viele Optionen lohnen sich?
Hier stehen 6; die vollständige Liste steht in man git. Der Befehl gehört zu git.
Verwandte Befehle
man-Seite: man git-fsck