Git: ¿cuál es el control remoto configurado por defecto para la sucursal?

Resuelto leonbloy asked hace 13 años • 7 respuestas

Tengo un repositorio desnudo remoto hub. Trabajo solo en la mastersucursal. La última frase de este mensaje de error a continuación me hace preguntarme: ¿Cómo puedo saber cuál es el "control remoto configurado por defecto para su sucursal actual" ? ¿Y cómo lo configuro?

[myserver]~/progs $ git remote -v
hub     ~/sitehub/progs.git/ (fetch)
hub     ~/sitehub/progs.git/ (push)

[myserver]~/progs $ git branch -r
  hub/master

[myserver]~/progs $ cat .git/HEAD
ref: refs/heads/master

[myserver]~/progs $ git pull hub
You asked to pull from the remote 'hub', but did not specify
a branch. Because this is not the default configured remote
for your current branch, you must specify a branch on the command line.
leonbloy avatar Jan 31 '11 09:01 leonbloy
Aceptado

Puedes hacerlo de forma más sencilla, garantizando que .gitconfigquede en un estado significativo:

Usando Git versión v1.8.0 y superior

git push -u hub masteral empujar, o:
git branch -u hub/master

O

(Esto configurará el control remoto de la sucursal actualmente registrada en hub/master)
git branch --set-upstream-to hub/master

O

(Esto configurará el control remoto de la sucursal nombrada branch_nameen hub/master)
git branch branch_name --set-upstream-to hub/master

Si estás usando v1.7.xo antes

debes usar --set-upstream:
git branch --set-upstream master hub/master

urschrei avatar Jan 31 '2011 10:01 urschrei

Seguimiento de la sucursal remota

Puede especificar el repositorio remoto predeterminado para enviar y extraer usando la opción track de git-branch. Normalmente harías esto especificando la opción --track al crear tu rama maestra local, pero como ya existe, simplemente actualizaremos la configuración manualmente de esta manera:

Edita tu.git/config

[branch "master"]
  remote = origin
  merge = refs/heads/master

Ahora puedes simplemente git push y git pull.

[ fuente ]

scragz avatar Jan 31 '2011 02:01 scragz

En aras de la integridad: las respuestas anteriores indican cómo configurar la rama ascendente, pero no cómo verla.

Hay algunas maneras de hacer esto:

git branch -vvmuestra esa información para todas las sucursales. (formateado en azul en la mayoría de terminales)

cat .git/configmuestra esto también.

Para referencia:

  • ¿Cómo consigo que Git me muestre qué ramas están rastreando qué?
  • ¿Qué es este seguimiento de sucursales (si corresponde) en git?
leonbloy avatar Jun 02 '2014 15:06 leonbloy