ver remote remotas ramas rama example comandos cambiar git

remotas - git remote



Obtener ramas de git existentes para rastrear sucursales remotas (5)

Mi flujo de trabajo habitual cuando trabajo con git es algo como esto:

  1. crear un repositorio local
  2. trabaje en ese repositorio, agregue / cambie archivos, etc.
  3. Decidir que quiero una ubicación remota central para el repositorio, y crear una
  4. enviar todas las confirmaciones desde mi repositorio local a este nuevo repositorio remoto

Ahora, sin embargo, quiero ser capaz de push y pull desde este repositorio remoto sin tener que especificar a dónde estoy empujando o tirando; Quiero que mi maestro local rastree el maestro remoto.

La forma correcta de hacer esto no está clara para mí, y no he podido determinarlo a partir de la documentación, aunque en realidad no debería ser más de un comando.

Debido a que es algo que solo se hace una vez por repositorio, generalmente he empleado una de las dos soluciones simples, pero hacky:

  1. usó git clone para crear un nuevo repositorio local y eliminó el anterior. Después de la clonación de git, el nuevo repositorio está configurado para rastrear el origen.
  2. editado manualmente .git / config para hacer el origen de la pista maestra.

Creo que debería poder ejecutar un comando, probablemente alguna forma de git remote para configurar un repositorio existente para que la pista maestra sea un maestro remoto. ¿Alguien puede decirme qué es ese comando?


En las versiones más nuevas de git puedes usar

git branch --track origin/branch_name


También puede usar esto si desea crear una nueva sucursal local para rastrear una sucursal remota:

git checkout --track -b [branch_name] --track origin[or other remote name]/[remote_branch_name]

o mejor:

git checkout -t origin/branch_name


Usa el argumento set-up arg:

git branch --set-upstream local-branch-name origin/remote-branch-name

Ejecutando el comando anterior actualiza su archivo .git / config correctamente e incluso verifica con este resultado:

"Branch-local-branch-name configurado para rastrear la rama remota remote-branch-name desde el origen".

EDITAR: Como dijo martijn : "En la versión Git v1.8.0, --set-upstream está en desuso. Use --set-upstream-to en su lugar".

git branch --set-upstream-to local-branch-name origin/remote-branch-name

Vea this para más información.


The --set-upstream flag is deprecated and will be removed.

git branch master --set-upstream-to myupstream/master


git help remote debería mostrarle lo que necesita saber. Creo que lo que quieres es

git remote add [remote-name] [remote-url] # Set a local branch to follow the remote git config branch.[branch-name].remote [remote-name] # Set it to automatically merge with a specific remote branch when you pull git config branch.[branch-name].merge [remote-master]

También puede editar manualmente .git / config para configurarlos.