Jestem w głównej gałęzi mojego komputera lokalnego sklonowanej głównej gałęzi repozytorium ze zdalnego serwera.
Zaktualizowałem plik i chcę przywrócić pierwotną wersję ze zdalnej gałęzi głównej.
W jaki sposób mogę to zrobić?
Zakładając, że nie zatwierdziłeś pliku lub nie dodałeś go do indeksu, a następnie:
git checkout -- filename
Zakładając, że dodałeś go do indeksu, ale go nie zatwierdziłeś, to:
git reset HEAD filename
git checkout -- filename
Zakładając, że to zrobiłeś, to:
git checkout origin/master filename
Zakładając, że chcesz zdmuchnąć wszystkie zatwierdzenia ze swojego oddziału (BARDZO ZNISZCZĄCY):
git reset --hard origin/master
git checkout HEAD filename
agit checkout origin/master filename
dla opcji pierwszej i drugiej byłoby to bardziej spójne?git checkout origin/master filename
opcję do odpowiedzi gahooa.git reset --hard master
sam byłem moim rozwiązaniem, ponieważ nie chciałem sięgać do źródła. Dzięki.Napotkałem ten sam problem i natrafiłem na ten wątek, ale mój problem dotyczył
upstream
. Poniżej polecenie git działało dla mnie.Składnia
Przykład
źródło
Jeśli nie przypisałeś go jeszcze do gałęzi master, jest to łatwe:
git checkout -b oops/fluke/dang
)git add -u; git commit;
)git checkout master
)Twoje zmiany zostaną zapisane w gałęzi oops / fluke / dang; mistrz będzie taki, jaki był.
źródło