Jak mogę sprawdzić konkretną wersję jednego pliku w git?
Znalazłem tę wiadomość na liście mailingowej , na której było napisane:
$ git checkout HEAD~43 Makefile
$ git reset Makefile
Ale nie rozumiem, jak znaleźć „HEAD ~ 43”, a jeśli zrobię git log aFile
, jak mogę się dowiedzieć, którego „HEAD ~ 43” powinienem użyć?
Dlaczego muszę uruchomić git reset
ten plik? Co to robi?
Odpowiedzi:
Wiesz, do jakiego zatwierdzenia (tj. Konkretnej wersji) należy plik? Następnie wykonaj:
Drugie polecenie:
Jest dla sytuacji, gdy chcesz odzyskać wersję pliku z określonego zakresu (co robię z nostalgią).
źródło
HEAD~43
jest po prostu drzewiasta, więc możesz użyć skrótu lub tagu. Musisz oddzielić drzewiaste od nazwy pliku za pomocą--
, w przeciwnym razie jest to traktowane jako nazwa pliku. Na przykład.źródło
HEAD~43
odnosi się do zatwierdzenia (wersji) pliku. Zamiast tego możesz użyć skrótu zatwierdzenia, który uzyskasz podczas wykonywaniagit log
na pliku. Jeśli chcesz tylko plik, nie musisz na nim uruchamiaćgit reset
; jest to konieczne tylko wtedy, gdy chcesz przekierować plik do bieżącego HEAD.źródło