Datei wiederherstellen
Ich habe die Löschung begangen und dann weitere Commits durchgeführt
Wenn Sie eine Datei gelöscht, festgeschrieben, dann weitergearbeitet und weitere Festschreibungen durchgeführt haben, nur um festzustellen, dass das Löschen der Datei ein Fehler war, hat Git immer noch Deckung für Sie! Um den richtigen Commit zu finden, prüfen Sie zunächst den Verlauf der gelöschten Datei:
$ git log -- <filename>
Sie können entweder mit dem letzten Commit arbeiten, der die Datei noch enthielt, oder mit dem Commit, der die Datei gelöscht hat. Checken Sie im ersten Fall einfach die Datei aus diesem Commit aus:
$ git checkout <commit hash> -- <filename>
Checken Sie im zweiten Fall die Datei von einem Commit davor aus :
$ git checkout <deletion commit hash>~1 -- <filename>
Ich habe eine Datei gelöscht, festgeschrieben und gepusht
Wenn Sie Ihren Commit oder Ihre Commits bereits auf ein Remote-Gerät gepusht haben, wird das Zurücksetzen und erneute Pushen Probleme verursachen, da der Verlauf des lokalen Repositorys im Wesentlichen neu geschrieben wurde. In diesem Fall ist es wahrscheinlich besser, einen neuen Commit aufzuzeichnen, der die Arbeit desjenigen rückgängig macht, der die Datei gelöscht hat. Führen Sie dazu Folgendes aus:
$ git revert --no-commit <commit>
Oben ist „<commit>“ der Commit, der die Datei löscht. Erstellen Sie anschließend wie gewünscht Ihren neuen Commit. Die Option „--no-commit“ verhindert, dass der Befehl sofort einen neuen Commit erstellt, und ermöglicht es Ihnen stattdessen, genau auszuwählen, welche der im alten Commit eingeführten Änderungen Sie in Ihrem neuen Commit rückgängig machen möchten.
No Comments