Archivo de la etiqueta: git

Uniendo ramas en git (merge)

Si tenemos dos ramas de desarrollo de un mismo proyecto en un repositorio git y llegado a un punto queremos juntarlas, podemos hacer lo siguiente:

git checkout foo
git pull . bar

Siendo bar el nombre de la rama que queremos unir con la rama foo.

Ahora es posible que existan conflictos entre ficheros que hayamos modificado en ambas ramas, para corregirlos, usaremos:

git mergetool -t herramienta_diff

Este comando nos informará fichero a fichero los cambios que se han producido y deberemos tomar manualmente las decisiones oportunas. En herramienta_diff tenemos que indicar el programa que vamos a usar para hacer la comparación de ficheros. En Linux podemos usar meld y en MacOS opendiff.

Enlaces relacionados:

Cómo clonar ramas (branch) en git

Escenario
Tienes tu proyecto en un repositorio de github.com con dos ramas (master y foo) y quieres clonarlas a tu disco duro.

Solución

git clone git@github.com:usuario/proyecto.git

Con esto obtendremos la rama principal (master).

git fetch
git checkout --track -b foo origin/foo

Y con esto otro la rama foo.

¿Conocéis alguna forma más sencilla? En este caso tenemos dos ramas, pero si hubiese N+1, ¿tendremos que descargar todas una a una?

Vía