Jedynym problemem, jaki miałem z tą odpowiedzią, jest to, że pozostawiła kopie dla pliku2 na dysku.
user52472
9
W moim przypadku przeniosłem cały folder, a potem zdałem sobie sprawę, że nie powinienem.
Bardzo podobała mi się odpowiedź @Dave Konopka, ale nie odniosłem większego sukcesu z takim podejściem (może moja wersja GIT (1.8.4)? Moje pliki nadal były wyświetlane jako usunięte. Miałem inne zmiany na stosie, których nie chciałem stracić (niestety).
To zależy od tego, co chcesz osiągnąć. Jeśli chcesz, aby wyglądał tak, jakby plik nigdy nie był przenoszony, możesz zresetować (lub zmienić bazę) z powrotem do stanu sprzed przeniesienia. Jeśli nie obchodzi cię historia, po prostu cofnij ją.
Pierwszy działa dobrze, o ile nie nacisnąłeś swojego zobowiązania lub ktoś nie wyciągnął z Ciebie środków.
CanSpice,
7
Jeśli przypadkowo zmieniłeś nazwę dużej liczby plików i chcesz wrócić do początku, usuń wszystkie pliki o zmienionych nazwach, które są wyświetlane jako addspod git statuspołączeniem.
Po usunięciu wszystkich zmienionych plików możesz uruchomić git checkout -- *lokalnie, aby przywrócić oryginalne nazwy plików.
Sztuczka, której użyłem, polegała na zrobieniu skrytki git, aby cofnąć wszystkie moje zmiany (w tym przywrócenie plików mv'd), a następnie usunąłem skrytkę za pomocą git stash drop.
git mv file2 file1
Odpowiedzi:
Bezczelna odpowiedź:
Sprawdź dokumentację git mv
źródło
git checkout .
nie działa, nawet z-f
opcją?git checkout -- .
.fatal: source directory is empty,
tylkogit reset --hard
wykonałem pracę.Jeśli nie dokonałeś żadnych innych zmian (które chcesz zachować) od ostatniego zatwierdzenia, możesz to zrobić
źródło
git reset --hard
. Samo przesunięcie go do tyłu wydaje mi się bezpieczniejszą opcją.załatwił sprawę dla mnie
źródło
W moim przypadku przeniosłem cały folder, a potem zdałem sobie sprawę, że nie powinienem.
Bardzo podobała mi się odpowiedź @Dave Konopka, ale nie odniosłem większego sukcesu z takim podejściem (może moja wersja GIT (1.8.4)? Moje pliki nadal były wyświetlane jako usunięte. Miałem inne zmiany na stosie, których nie chciałem stracić (niestety).
Udało mi się to zrobić:
źródło
To zależy od tego, co chcesz osiągnąć. Jeśli chcesz, aby wyglądał tak, jakby plik nigdy nie był przenoszony, możesz zresetować (lub zmienić bazę) z powrotem do stanu sprzed przeniesienia. Jeśli nie obchodzi cię historia, po prostu cofnij ją.
źródło
Jeśli przypadkowo zmieniłeś nazwę dużej liczby plików i chcesz wrócić do początku, usuń wszystkie pliki o zmienionych nazwach, które są wyświetlane jako
adds
podgit status
połączeniem.Po usunięciu wszystkich zmienionych plików możesz uruchomić
git checkout -- *
lokalnie, aby przywrócić oryginalne nazwy plików.źródło
Pierwsze polecenie usuwa ze sceny plik2, ale pozostawia jego kopię. Drugie polecenie przywraca oryginalny plik, a trzecie usuwa nowy plik.
źródło
Sztuczka, której użyłem, polegała na zrobieniu skrytki git, aby cofnąć wszystkie moje zmiany (w tym przywrócenie plików mv'd), a następnie usunąłem skrytkę za pomocą git stash drop.
źródło
Mniej przerażające jest przejście na najwyższy poziom repozytorium i wykonanie:
git reset
git checkout.
źródło