Angenommen, ich bin in einem Git-Repository. Ich lösche eine Datei und schreibe diese Änderung fest. Ich arbeite weiter und mache weitere Verpflichtungen. Dann muss ich diese Datei wiederherstellen.
Ich weiß, dass ich eine Datei mit auschecken kann git checkout HEAD^ foo.bar
, aber ich weiß nicht wirklich, wann diese Datei gelöscht wurde.
- Was wäre der schnellste Weg, um das Commit zu finden, mit dem ein bestimmter Dateiname gelöscht wurde?
- Was wäre der einfachste Weg, um diese Datei wieder in meine Arbeitskopie aufzunehmen?
Ich hoffe, ich muss meine Protokolle nicht manuell durchsuchen, das gesamte Projekt für eine bestimmte SHA auschecken und diese Datei dann manuell in meine ursprüngliche Projektkasse kopieren.
git log --diff-filter=D -- path/to/file
git checkout deletedFile
wird wiederhergestellt, deletedFile
wenn es gelöscht wurde, aber dieses Löschen noch nicht bereitgestellt oder festgeschrieben wurde . Darum geht es hier nicht; In dieser Frage geht es darum, wie eine Datei wiederhergestellt werden kann, deren Löschung vor vielen Commits festgeschrieben wurde.