В документации по адресу Github-Help: Syncing a Fork показаны три команды, которые необходимо сохранить. мой форк GitHub синхронизирован с исходным репозиторием.
git fetch upstream
git checkout master
git merge upstream/master
Могу ли я использовать следующие две команды вместо трех предыдущих?
git checkout master
git pull upstream/master
Являются ли два набора команд эквивалентными или между ними есть различия?
git pull
=git fetch
+git merge
, по крайней мере, вообще - person Tim Biegeleisen   schedule 15.11.2016git pull upstream/master
неверно, так как третье слово (upstream/master
) должно быть именем удаленного, аupstream/master
— именем ветки удаленного отслеживания. Git, к сожалению, использует очень похожие слова, которые означают очень разные (хотя и связанные) вещи: слово branch имеет по крайней мере два значения, слово remote само по себе имеет одно значение, а Фраза ветка удаленного отслеживания имеет еще одну. - person torek   schedule 15.11.2016git clone -o upstream
или извлекалиupstream
хотя бы один раз. Обратите внимание, что если вы клонировали, ваша основная ветка, вероятно, уже отслеживаетupstream/master
, и в этом случаеgit pull
достаточно. Git настраивает все за вас. Однако, если вы создали локальную копию с нуля (git init
) и добавили удаленную после (git remote add upstream <url>
), вам необходимо указатьupstream/master
, если только вы не настроили отслеживание самостоятельно (git branch --set-upstream-to upstream/master
). - person Fabien Bouleau   schedule 04.10.2017