solucionarlo, asumiendo que son en la rama master
y quieren tirar de la rama master
del origin
remoto, en las nuevas versiones Git suficiente (1.8 o posterior):
git branch -u origin/master master
(análoga para otras ramas . y/o mandos a distancia)
Si se puede combinar esto con un empujón, que es aún más corto:
git push -u origin master
a partir de entonces, una llanura git pull
/git push
hará lo que esperas.
Durante la serie Git 1.7, git branch
no tienen el interruptor -u
(sólo git push
lo hicieron), y en su lugar había que utilizar el mucho más tiempo --set-upstream
:
git branch --set-upstream master origin/master
Nota la reversión de argumentos en comparación con -u
. Busqué esta orden más de una vez.
Todos ellos, por cierto, son abreviaturas de hacer lo siguiente, que todavía se puede hacer de forma explícita:
git config branch.master.remote origin
git config branch.master.merge refs/heads/master
Antes de 1,7, que tenían a hacerlo de esta manera.
para hacerlo funcionar tuve que verificar la rama "principal" (no se seleccionó ninguna rama) y tirar, eso solucionó el problema. – cinek
@cinek: Sí, 'git pull' se extrae y se fusiona con la * rama actual * por lo que su comportamiento depende completamente de qué rama esté desprotegida, y con un HEAD separado (sin rama desprotegida), no hay manera de que pueda saber qué rama para tirar. – Cascabel
@cinek: Supuse que eras nuevo en git, así que admito que estabas en un estado totalmente estándar en Branch Master, mi mal :-). – p4bl0