Warning: Undefined array key "typ" in /srv/vhost/diaridigital.net/home/html/sourcecode/main/articles.php on line 18
Fusionar ramas en Git
Tiempo de lectura: 2 minutos
Git permite hacer desarrollos en paralelo utilizando ramas para después fusionarlas en un único código de la rama principal
A medida que avanza un proyecto y se crean ramas, el proyecto empezará a diferenciarse de una rama a otra. Habrá un momento en que interese fusionar ramas de código para poder incorporar el trabajo realizado en una rama a la rama master.
El proceso de fusionado suele ser muy simple ya que Git lo hace de forma automática. Se complica si se encuentran cambios que Git no pueda procesar de manera automática. Git usa un antecesor común a las ramas y comprueba los cambios que se han introducido al proyecto desde entonces, combinando el código de ambas ramas.
Merge
Tenemos el desarrollo en la rama development derivada de la rama master
A-->B-->C development
/
D-->E-->F-->G master Para hacer un merge nos situamos en una rama y decimos con qué otra rama se debe fusionar el código. Para fusionar una rama de desarrollo llamada development con la rama principal, primero nos situamos en la rama master y comprobamos que estamos en ella:
git checkout master
git branch Entonces podemos hacer un merge con la rama development
git merge development
A-->B-->C development
/ \
D-->E-->F-->G-->H master El comando merge require de un comentario para identificar la fusión. Si no se especifica nada, se abrirá un editor para entrar el comentario. Esto se puede hacer en el mismo paso en la línea de comando:
git merge development -m 'Nuevo desarrollo' Siguiendo este mismo procedimiento, si se han realizado cambios en la rama principal, master, los podemos incorporar a la rama desarrollo para continuar el trabajo con los últimos cambios. Por lo tanto, desde la rama de desarrollo en la que estamos hacemos:
git merge master -m 'Incorporar cambios de master' Y ya los tenemos incorporados.
- Documentación de Git
https://docs.github.com - Scott Chacon
https://git-scm.com