Archivo

Posts Tagged ‘git branch –set-upstream’

git branch – Creando una branch remote en GIT

17 mayo, 2013 Deja un comentario

Para continuar con las diferentes manipulaciones en GIT, hoy les propongo hablar de la creación de ramas (branch) en un depósito.

La creación de ramas depende de la manera como los programadores trabajan en un proyecto. Supongamos que tenemos un gran proyecto en el que intervienen diferentes equipos. Todos compartirán una rama de una versión a entregar al cliente, a la que llamaremos rama 1.1. Para no llenar de modificaciones inestables la rama principal; cada equipo crea un rama a partir de la rama 1.1 para versionar los cambios antes de integrarlos en la 1.1.

Primero que todo, 1.1 debe esta al día para crear la nueva rama. Llamemos a esta nueva rama 1.1-team1-new-feature. Y creémosla en el depósito local.

joan@jomaora:~/workspace/project (1.1) $ git branch 1.1-team1-new-feature
joan@jomaora:~/workspace/project (1.1) $ git branch -a
* 1.1
1.1-team1-new-feature
master
remotes/origin/1.1

Teniendo la rama creada en local, podemos proceder a registrarla en el depósito remoto para que esté disponible a ser check-out-eada por otras personas, y que los commits hechos en ella no se queden en la máquina local.

joan@jomaora:~/workspace/project (1.1) $ git push origin 1.1-team1-new-feature
Counting objects: 13456, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (4718/4718), done.
Writing objects: 100% (10739/10739), 1.88 MiB, done.
Total 10739 (delta 3654), reused 9425 (delta 2775)
remote: ref : refs/heads/1.1-team1-new-feature
remote: oldrev : 0000000000000000000000000000000000000000
remote: newrev : f9900d3c5d243a20aece1ddf11d2ab6bc19f7dcd
remote: no list
remote:
remote: sed: can't read ./description: No such file or directory
To git@git.jomaora.com:/project/project.git
* [new branch] 1.1-team1-new-feature -> 1.1-team1-new-feature

En este momento, la rama creada en local y la que acabamos de pushear no están ligadas. Podemos verificar eso fácilmente, check-out-eando la 1.1-team1-new-feature y haciendo un git pull:

joan@jomaora:~/workspace/project (1.1-team1-new-feature) $ git pull

remote: Counting objects: 1337, done.
remote: Compressing objects: 100% (403/403), done.
remote: Total 659 (delta 226), reused 305 (delta 61)
Receiving objects: 100% (659/659), 94.60 KiB, done.
Resolving deltas: 100% (226/226), completed with 125 local objects.
From git.jomaora.com:/project/project
47c4c9a..56bb58e 1.1 -> origin/1.1
You asked me to pull without telling me which branch you want to merge with, and 'branch.1.1-team1-new-feature' in your configuration file does not tell me, either. Please specify which branch you want to use on the command line and try again (e.g. 'git pull repository> <refspec>').
See git-pull(1) for details.

If you often merge with the same branch, you may want to
use something like the following in your configuration file:
[ branch "1.1-team1-new-feature" ]
remote = <nickname>
merge = <remote-ref>

[remote "<nickname>"]
url = <url>
fetch = <refspec>

See git-config(1) for details.

Lo interesante de del mensaje, es que git nos dice cuál es el problema :

You asked me to pull without telling me which branch you want to merge with, and ‘branch.1.1-team1-new-feature’ in your configuration file does not tell me, either.

Para vincular la rama en remoto con la rama en local, utilizamos el siguiente comando:

joan@jomaora:~/workspace/project (1.1-) $ git branch --set-upstream 1.1-team1-new-feature origin/1.1-team1-new-feature
Branch 1.1-team1-new-feature set up to track remote branch 1.1-team1-new-feature from origin by rebasing.

Y ahora si repetimos el git pull, tendremos:

joan@jomaora:~/workspace/project (1.1) $ git pull --rebase
Current branch 1.1-team1-new-feature is up to date.

Hype Driven Development

coz' geeks love new stuff !

My experiments with SCRUM

Site to discuss Agile (Scrum, XP, etc) concepts and ideas.

Chris Aniszczyk's (zx) diatribe

work. life. open source. diatribes.

GermanTrevi

repositorio de mi mente...

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 149 seguidores