Щоб виправити це, припустивши, що ви знаходитесь на master
гілці і хочете витягнути master
гілку з origin
пульта, у досить нових версіях Git (1.8 або новіша):
git branch -u origin/master master
(Аналогічно для інших гілок та / або пультів дистанційного керування.)
Якщо ви можете поєднати це з натисканням, це ще коротше:
git push -u origin master
Після цього звичайний git pull
/ git push
зробить те, що ви очікуєте.
Під час серії Git 1.7 git branch
не було -u
перемикача (лише git push
було), і натомість вам довелося використовувати набагато довше --set-upstream
:
git branch --set-upstream master origin/master
Зверніть увагу на зміну аргументів порівняно з -u
. Я не раз перебирав це замовлення.
Все це, до речі, є скороченням для виконання наступних дій, які ви все ще можете зробити явно:
git config branch.master.remote origin
git config branch.master.merge refs/heads/master
До 1.7 ви повинні були зробити це таким чином.