Rozwiązywanie konfliktów za pomocą zdalnych zmian podczas pobierania z Git remote

Próbuję pobrać kod z mojego repo GitHub na mój serwer, ale ciąg nie udaje się z powodu konfliktów scalania. Nie chcę przechowywać żadnych zmian, które mogły wystąpić na moim lokalnym serwerze od ostatniego pull.

Więc czy jest jakiś sposób, aby zmusić Git do nadpisania z jakąkolwiek wersją jest w Githubie, zamiast niepokoić mnie konfliktami?

 310
Author: David Tuite, 2011-01-24

2 answers

Jeśli naprawdę chcesz odrzucićcommity , które zrobiłeś lokalnie, tzn. nigdy więcej ich nie masz w historii, nie pytasz jak pull - pull oznacza scalanie i nie musisz scalać. Wszystko co musisz zrobić to:

# fetch from the default remote, origin
git fetch
# reset your current branch (master) to origin's master
git reset --hard origin/master

Osobiście zalecałbym stworzenie gałęzi backupu w Twojej obecnej głowie, aby jeśli zdasz sobie sprawę, że to był zły pomysł, nie straciłeś z tym pojęcia.

Jeśli z drugiej strony, chcesz zachować te commity i sprawić, by wyglądały tak, jakbyś po połączeniu z origin, aby zachować tylko wersje z origin, możesz użyć strategii ours merge:

# fetch from the default remote, origin
git fetch
# create a branch at your current master
git branch old-master
# reset to origin's master
git reset --hard origin/master
# merge your old master, keeping "our" (origin/master's) content
git merge -s ours old-master
 514
Author: Cascabel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-31 17:11:48

Możesz użyć odpowiedzi z duplikatu linku wskazywanego przez nvm.

Lub możesz rozwiązać konflikty za pomocą ich zmian (ale niektóre z Twoich zmian mogą zostać zachowane, jeśli nie są sprzeczne z wersją zdalną):

git pull -s recursive -X theirs
 151
Author: Antoine Pelisse,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-15 03:11:25