2009-07-02 14 views
39

Tengo un repositorio local en el que estoy trabajando y su control remoto está alojado en GitHub. Recientemente, creé una rama y comencé a trabajar en ella, realizando varios commits y ahora deseo pasar la rama a GitHub y poder llevarla a otro repositorio clonado.Empujar y tirar ramas en Git

¿Qué hay que hacer para lograr esto?

Si esto no es posible con GitHub, me gustaría saber cómo hacerlo normalmente.

+0

Más información sobre el flujo de trabajo en: http: //stackoverflow.com/a/9204499/631619 –

+0

no es el título más perspicaz para una pregunta, ugh –

Respuesta

46
git push origin <local-branch-name>:<remote-branch-name> 

Sustituto de <local-branch-name> y <remote-branch-name>. Pueden ser iguales o diferentes, como desee.

+2

¿Eso significa que puedo hacer "origen de extracción de git" : "? – PHLAK

+4

@PHLAK: Sí, también puedes usar el mismo refspec para 'git pull'. –

+0

@AlanHaggaiAlavi Pero ese no es el mismo refspec. –

16

A medida que han establecido los mandos a distancia ya, el comando es sólo

git push origin branch-name 

en el primer empujón.

Después, al usar git push origin, se presionarían todas las ramas con el nombre correspondiente en el control remoto.

5

Asegúrese de que su URL remota utiliza la sintaxis SSH y no solo la sintaxis del protocolo Git. Si se ejecuta,

git remote show origin 

la URL impresa debe ser algo como,

[email protected]:yourname/projectname.git 

Se necesita el URL demasiado para que parezca que si usted quiere ser capaz de empujar. Si eres un usuario público (sin acceso de escritura) la URL se verá así,

git://github.com/yourname/projectname.git 

Si el suyo se parece a este último a continuación, puede editar manualmente en sus proyectos .git/config archivo.

+0

ya puedo empujar y tirar a y de mi repositorio de GitHub, estoy tratando de descubrir cómo empujar y tirar de una rama. – PHLAK

0

si tiene que tirar de cualquier código de sucursal de forma remota a nivel local

$git pull origin branch_name 

mientras que si lo que necesita para empujar código a la rama

es necesario comprobar es su código de guardar correctamente se puede comprobar por

$git status 

que

$git add -A 

Pasado ese plazo, se comprometen a su sucursal

$git commit -m "this is initial change" 

que (Última) empujar su código a la rama por:

$git push origin branch_name 
Cuestiones relacionadas