Odpowiedzi:
Jeśli chcesz zastąpić tylko jeden plik:
git fetch
git checkout origin/master <filepath>
Jeśli chcesz zastąpić wszystkie zmienione pliki:
git fetch
git reset --hard origin/master
(Zakłada się, że pracujesz nad tym masterlokalnie i chcesz wprowadzić zmiany w źródle master- jeśli korzystasz z gałęzi, zastąp to w zamian).
git fetch git reset --hard origin/masterlub/<branch name>
Najprostsza wersja, zakładając, że pracujesz w tej samej gałęzi, w której znajduje się żądany plik:
git checkout path/to/file.
Robię to tak często, że mam ustawiony alias gc='git checkout'.
git checkout path/to/filepracował dla mnie. Uważam też, że ten schemat jest bardzo przydatny, aby zrozumieć koncepcyjnie, co git checkoutsię dzieje. link
To działało dla mnie:
git reset HEAD <filename>
Pełna synchronizacja ma kilka zadań:
git reset HEAD --hard
git clean -f
git pull master master
Albo wolę, że mogę utworzyć nowy oddział z najnowszymi zdalnie, używając:
git checkout origin/master -b <new branch name>
origin to moje zdalne odwołanie do repozytorium, a master to moja rozważana nazwa oddziału. Mogą się różnić od twoich.