Has configurado el flujo ascendente de esa rama
(ver:
git branch -f --track my_local_branch origin / my_remote_branch
# O (si my_local_branch está actualmente desprotegido):
$ git branch --set-upstream-to my_local_branch origin / my_remote_branch
( git branch -f --track
no funcionará si la rama está desprotegida: use el segundo comando en su git branch --set-upstream-to
lugar, o obtendrá " fatal: Cannot force update the current branch.
")
Eso significa que su sucursal ya está configurada con:
branch.my_local_branch.remote origin
branch.my_local_branch.merge my_remote_branch
Git ya tiene toda la información necesaria.
En ese caso:
# if you weren't already on my_local_branch branch:
git checkout my_local_branch
# then:
git pull
es suficiente.
Si no hubiera establecido esa relación de rama ascendente cuando se trataba de impulsar su ' my_local_branch
', entonces un simple git push -u origin my_local_branch:my_remote_branch
habría sido suficiente para impulsar y establecer la rama ascendente.
Después de eso, para los tirones / empujones posteriores, git pull
o git push
habría sido suficiente, de nuevo.
git pull
es suficiente.git branch -f --track master origin/master
devuelve un error:fatal: Cannot force update the current branch.
--set-upstream-to
,--set-upstream
está en desuso y se eliminará.No usa la
:
sintaxis:pull
siempre modifica la rama actualmente desprotegida. Así:mientras haya realizado el
my_local_branch
check out hará lo que quiera.Como ya tiene configurada la rama de seguimiento, ni siquiera necesita especificar; simplemente podría hacer ...
mientras ha realizado el
my_local_branch
check out, y se actualizará desde la rama rastreada.fuente