Breaking

Post Top Ad

Your Ad Spot

viernes, 14 de junio de 2019

Git: fusionar rama en Master

Una de las características más poderosas de Git es la capacidad de crear y combinar ramas fácilmente. La naturaleza distribuida de Git alienta a los usuarios a crear nuevas sucursales a menudo y a fusionarlas regularmente como parte del proceso de desarrollo. Esto mejora fundamentalmente el flujo de trabajo de desarrollo para la mayoría de los proyectos al alentar compromisos granulares más pequeños y más enfocados.
En los sistemas de control de versiones heredados (como CVS), la dificultad de la combinación lo restringía a los usuarios avanzados. Otros sistemas de control de versiones modernos pero centralizados, como Subversion, requieren que los compromisos se realicen en un repositorio central, por lo que un flujo de trabajo ágil con ramificación y fusión local es atípico.
Un flujo de trabajo de bifurcación comúnmente utilizado en Git es crear una nueva rama de código para cada nueva característica, corrección de errores o mejora. Estos se llaman ramas de características. Cada rama compartimenta los compromisos relacionados con una característica particular. Una vez que se completa la nueva función, es decir, se ha confirmado un conjunto de cambios en la rama de la función, está listo para volver a fusionarse en la rama maestra (u otra rama de la línea de código principal en función del flujo de trabajo en uso).
El git branchcomando se utiliza para enumerar todas las ramas existentes en un repositorio. Aparecerá un asterisco junto a la rama activa en ese momento.
$ git branch
* master
Para crear una nueva rama, podemos usar el comando git branch new-branchEsto creará una nueva rama que refleje las confirmaciones en la rama actualmente activa.
$ git branch new-branch
$ git branch
* master
new-branch  
Aparte de esto, tenga en cuenta que detrás de escena, Git no crea realmente un nuevo conjunto de confirmaciones para representar la nueva rama. En Git, una rama no es más que una etiqueta. Es una etiqueta que podemos usar para hacer referencia a una cadena particular de confirmaciones. Sería ineficiente duplicar un conjunto de confirmaciones detrás de escena, por lo que Git nos permite crear múltiples conjuntos de confirmaciones divergentes desde una sola base.
En este punto, hemos creado una nueva rama, pero todavía estamos ubicados en la rama de origen. Para comenzar a trabajar en la nueva rama, primero debemos ejecutar el comando git checkout new-branchEsto cambiará la rama activa a la nueva rama.
$ git checkout new-branch
Switched to branch ‘new-branch'  
$ git branch
master  
* new-branch
En este punto, se pueden realizar confirmaciones en la nueva rama para implementar la nueva característica. Una vez que se completa la característica, la rama se puede volver a combinar en la rama del código principal (generalmente maestro).
Primero corremos git checkout masterpara cambiar la rama activa de nuevo a master. Luego ejecutamos el comando git merge new-branchpara fusionar la nueva característica en la rama maestra. Tenga en cuenta que git mergecombina la rama especificada en la rama activa actualmente. Así que tenemos que estar en la rama en la que nos estamos fusionando .
# ...develop some code...
$ git add –A
$ git commit –m "Some commit message"
$ git checkout master
Switched to branch 'master'  
$ git merge new-branch
Si todo va bien, entonces nuestro trabajo está hecho. La nueva característica compromete ahora aparece en la rama maestra. Sin embargo, es posible que Git no pueda completar la fusión debido a un cambio de conflicto en la rama de origen. Esto se denomina conflicto de fusión y se tratará en un artículo separado.
Para resumir, aquí están los comandos para crear una nueva rama, hacer algunas confirmaciones y volver a combinarla en el maestro:
$ git checkout master
$ git branch new-branch
$ git checkout new-branch
# ...develop some code...
$ git add –A
$ git commit –m "Some commit message"
$ git checkout master
$ git merge new-branch

Sobre el Autor

Este artículo fue escrito por Jacob Stopak, un consultor y desarrollador de software con pasión por ayudar a otros a mejorar sus vidas a través del código. Jacob es el creador de Initial Commit , un sitio dedicado a ayudar a los desarrolladores curiosos a aprender cómo se codifican sus programas favoritos. Su proyecto destacado ayuda a las personas a aprender Git a nivel de código

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

Post Top Ad

Your Ad Spot

Páginas