Powiedz, że jestem w repozytorium Git. Usuwam plik i zatwierdzam tę zmianę. Kontynuuję pracę i robię więcej zobowiązań. Następnie stwierdzam, że muszę przywrócić ten plik.
Wiem, że mogę pobrać plik przy użyciu git checkout HEAD^ foo.bar
, ale tak naprawdę nie wiem, kiedy ten plik został usunięty.
- Jaki byłby najszybszy sposób na znalezienie zatwierdzenia, które usunęło daną nazwę pliku?
- Jaki byłby najłatwiejszy sposób na powrót tego pliku do mojej kopii roboczej?
Mam nadzieję, że nie muszę ręcznie przeglądać dzienników, sprawdzać całego projektu pod kątem danego SHA, a następnie ręcznie kopiować ten plik do mojego oryginalnego kasy.
git log --diff-filter=D -- path/to/file
git checkout deletedFile
usunięcie, deletedFile
jeśli zostało usunięte, ale to usunięcie nie zostało jeszcze ustawione lub zatwierdzone . Nie o to tu pyta pytanie; to pytanie dotyczy sposobu przywrócenia pliku, którego usunięcie zostało popełnione wiele zmian wcześniej.