2011-02-03 13 views
118

Creé un nuevo repositorio GitHub - Quiero poner allí mi repositorio existente.
He seguido las instrucciones:Con GitHub, ¿cómo presiono todas las ramas al agregar un repositorio existente?

cd existing_git_repo 
git remote add origin [email protected]:acme-org/myprj.git 
git push origin master 

Esto sólo empuja la rama principal a GitHub.
¿Cómo envío todo (incluidas todas las sucursales) en mi repositorio existente a mi nuevo repositorio de GitHub?

+0

Nota: también tiene 'git push --follow-tags' con git 1.8.3+ (mayo de 2013). Vea [mi respuesta editada a continuación] (http://stackoverflow.com/a/4886153/6309) – VonC

Respuesta

227

Nota: git push --all no empujará sus etiquetas, solo sus ramas.

git push --all 
git push --tags 

sería realmente empujar todo lo . Consulte también "Set up git to pull and push all branches".
No se olvide de la opción --dry-run para hacer algunas pruebas antes de empujar realmente todo.
Consulte también la ayuda de GitHub "Working with remotes" para configurar su origen en el repositorio remoto de GitHub.


Como se mencionó en "How to make “git push” include tags within a branch?", git 1.8.3+ (mayo de 2013) Introducción:

git push --follow-tags 

Esto no va a empujar todas las etiquetas, pero sólo los que puede acceder desde el rama (s) HEAD (s) que está presionando.

que pueden ayudar a mantener esa operación (empujando compromete y etiquetas) hecho con el comando uno en lugar de dos.

Git 2.4.1+ (Q2 2015) introducirá la opción push.followTags.

+0

Esto parece no funcionar cuando desea presionar a otro control remoto (en lugar de origen), solo empuja mi rama actual. – Aloys

+0

@Aloys que dependería de su versión de git y de su política de inserción predeterminada actual: http://stackoverflow.com/questions/10002239/difference-between-git-checkout-track-origin-branch-and-git-checkout-b- branch/10002469 # 10002469 – VonC

+0

Si desea insertar ramas remotas, use '--mirror' – BFar

15

La respuesta aceptada no es del todo correcta, o al menos no funcionó para mí. Necesitaba especificar el repositorio remoto también, por ejemplo:

git push origin --all 
+0

La especificación del control remoto solo es necesaria cuando upstream está desactivado. – aross

+0

Repositorio requerido si se han agregado múltiples controles remotos, creo ('$ git remote -v') – michael

+0

Para establecer el seguimiento entre las sucursales locales y remotas -u se puede agregar:' git push -u origin --all' – Ryan

Cuestiones relacionadas