Oto różne przypadki jako odniesienie, aby pomóc innym:
Jeśli usunięcie nie zostało zatwierdzone, poniższe polecenie przywróci usunięty plik z drzewa roboczego.
$ git checkout -- <file>
Możesz uzyskać listę wszystkich usuniętych plików z drzewa roboczego, używając poniższego polecenia.
$ git ls-files --deleted
Jeśli usunięcie zostało zatwierdzone, znajdź zatwierdzenie w miejscu, w którym się ono wydarzyło, a następnie odzyskaj plik z tego zatwierdzenia.
#find the commit hash where it had this file deleted
$ git rev-list -n 1 HEAD -- <file>
Powinno dać ci coś w rodzaju c46e81aa403ecb8a0f7a323a358068345: Teraz użyj zatwierdzenia # tutaj
$ git checkout <commit>^ -- <file>
Coś w tym stylu: $ git Checkout c46e81aa403ecb8a0f7a323a358068345 -
Jeśli szukasz ścieżki pliku do odzyskania, poniższe polecenie wyświetli podsumowanie wszystkich usuniętych plików.
$ git log --diff-filter=D --summary
Jeśli chcesz tylko wyświetlić listę plików:
git log --diff-filter=D --summary | grep "delete mode"
git checkout .działałoby dobrze.