Ustawiłeś upstream tej gałęzi
(widzieć:
git branch -f --track my_local_branch origin / my_remote_branch
# LUB (jeśli moja_lokalna_branch jest aktualnie wyrejestrowana):
$ git branch --set-upstream-to my_local_branch origin / my_remote_branch
( git branch -f --track
nie zadziała, jeśli gałąź jest wyewidencjonowana: użyj git branch --set-upstream-to
zamiast tego drugiego polecenia , albo otrzymasz "fatal: Cannot force update the current branch.
”)
Oznacza to, że Twój oddział jest już skonfigurowany z:
branch.my_local_branch.remote origin
branch.my_local_branch.merge my_remote_branch
Git ma już wszystkie niezbędne informacje.
W tym wypadku:
# if you weren't already on my_local_branch branch:
git checkout my_local_branch
# then:
git pull
wystarczy.
Gdybyś nie ustanowił tej relacji odgałęzienia upstream, gdy przyszedłby do wypchnięcia twojego ' my_local_branch
', wystarczyłby prosty git push -u origin my_local_branch:my_remote_branch
, aby wypchnąć i ustawić gałąź upstream.
Po tym, dla kolejnych pociągnięć / pchnięć, git pull
lub git push
znowu, wystarczyłoby.
git pull
wystarczy.git branch -f --track master origin/master
zwraca błąd:fatal: Cannot force update the current branch.
--set-upstream-to
,--set-upstream
jest przestarzałe i zostanie usunięte.Nie używasz
:
składni -pull
zawsze modyfikuje aktualnie wyewidencjonowaną gałąź. A zatem:gdy się
my_local_branch
wymeldowałeś, zrobisz, co chcesz.Ponieważ masz już ustawioną gałąź śledzenia, nie musisz nawet określać - możesz po prostu zrobić ...
gdy się
my_local_branch
wyewidencjonowałeś, i zaktualizuje się z śledzonej gałęzi.źródło