Usunąłem niektóre pliki na moim komputerze, jak mogę je ponownie pobrać?
Pull mówi: „Już aktualne”.
Usunąłem niektóre pliki na moim komputerze, jak mogę je ponownie pobrać?
Pull mówi: „Już aktualne”.
Odpowiedzi:
Ponieważ git jest rozproszonym systemem VCS, Twoje lokalne repozytorium zawiera wszystkie informacje. Pobieranie nie jest konieczne; wystarczy wyodrębnić żądaną zawartość z repozytorium na wyciągnięcie ręki.
Jeśli nie zatwierdziłeś usunięcia, po prostu wyewidencjonuj pliki z bieżącego zatwierdzenia:
git checkout HEAD <path>
Jeśli zatwierdziłeś usunięcie, musisz wypisać pliki z zatwierdzenia, które je zawiera. Przypuszczalnie byłoby to poprzednie zatwierdzenie:
git checkout HEAD^ <path>
ale jeśli zostało nzatwierdzone wcześniej, użyj HEAD~nlub po prostu uruchom gitk, znajdź SHA1 odpowiedniego zatwierdzenia i wklej go.
<path>jest obowiązkowe, nawet jeśli tylko .kropka dla bieżącego reż. Ale „gałąź” ( HEADw powyższym przykładzie) jest opcjonalna. Podobnie jak w przypadku wielu poleceń Git, ani dane wyjściowe, ani pomoc nie są pomocne.
git checkout filename
git reset --hard też może załatwić sprawę
git reset --hardmetody, ponieważ spowoduje to powrót całego drzewa do lokalizacji, w której umieścisz HEAD / HEAD ^ / HEAD ~ n, a zrobi to bez uprzedzeń i potencjalnie straci wiele zatwierdzeń ...
git checkount .działał jak urok!
Jeśli usunąłeś lokalnie wiele plików, ale nie zostały one zatwierdzone, możesz wymusić wypisanie
$ git checkout -f HEAD
Jeśli usunąłeś wiele plików lokalnie i nie zatwierdziłeś zmian, przejdź do ścieżki lokalnego repozytorium, otwórz powłokę git i wpisz.
$ git checkout HEAD .
Wszystkie usunięte pliki przed ostatnim zatwierdzeniem zostaną odzyskane.
Dodawanie „.” przywróci wszystkie usunięte pliki z bieżącego repozytorium do odpowiednich ścieżek.
Aby uzyskać więcej informacji, zapoznaj się z dokumentacją .