Git es el sistema de control de versiones más popular que registra los cambios realizados en nuestro proyecto a lo largo del tiempo en una base de datos especial llamada repositorio. Podemos mirar nuestro proyecto y ver quién ha hecho qué cambios, cuándo y por qué, y si nos equivocamos en algo, podemos revertir fácilmente nuestro proyecto a un estado anterior. En este artículo veremos
- El concepto de fusión de ramas de git
- Comandos esenciales de git para hacerlo y
- El significado central de esos comandos.
Nota: terminologías clave
- Rama actual: la rama que se fusionará
- Sucursal de destino: La sucursal en la que queremos fusionar la sucursal actual
Concepto de fusión de Git
El concepto de fusión de git es básicamente fusionar múltiples secuencias de confirmaciones, almacenadas en múltiples ramas en un historial unificado o, para ser simple, puede decir en una sola rama.
Lo que sucede es que cuando tratamos de fusionar dos ramas, git toma dos punteros de confirmación y comienza a buscar una confirmación de base común en esas dos ramas de bits especificadas. Cuando git encuentra la confirmación de base común, simplemente crea una «confirmación de combinación» automáticamente y combina cada secuencia de confirmación de combinación en cola.
Hay un algoritmo de fusión adecuado en git, con la ayuda del cual git realiza todas estas operaciones y presenta conflictos si los hay.
En nuestro caso, tenemos dos ramas, una es la rama predeterminada llamada «principal» y la otra rama llamada «dev» y así es como se ve nuestro repositorio git antes de fusionarse.
Aquí, git encuentra la base común, crea una nueva confirmación de fusión y las fusiona.
Una operación de fusión de git se realiza ejecutando el comando «git merge <nombre de la rama que se fusionará (en nuestro caso es «dev»)>». Cuando realizamos la fusión, git siempre se fusiona con la rama actual desde donde estamos realizando la operación (en nuestro caso, es «principal»). Por esto, la sucursal que se está fusionando no se ve afectada.
Tipos de fusiones:
- Fusión de avance rápido
- Fusión de tres vías
La combinación de avance rápido ocurre cuando la punta de la rama actual («dev» en nuestro caso) es un ancestro directo de la rama de destino («principal» en nuestro caso). Aquí, en lugar de fusionar las dos ramas, git simplemente mueve la punta de la rama actual hacia la punta de la rama de destino. La combinación de avance rápido no es posible si las ramas han divergido. Luego, necesitamos una fusión de 3 vías que use una confirmación dedicada para fusionar dos historias o puede decir ramas.
Comandos esenciales para realizar la fusión de Git y sus significados principales
En primer lugar, para realizar la operación de combinación de git, debemos tener un repositorio de git y al menos dos ramas en él. Inicialmente (cuando inicializamos un repositorio de git ejecutando el comando «git init») tenemos una rama predeterminada en cualquier repositorio de git. Asi que. primero que nada tenemos que crear otra rama. Para hacerlo, tenemos que ejecutar el siguiente comando
git branch <name of the branch you wanna create>
En nuestro caso el nombre de la sucursal es dev.
Aquí hemos creado dos ramas, una es la «principal» predeterminada y otra es «dev». También hemos comprometido dos cambios en dos ramas.
Ahora, para fusionar estas dos ramas primero, debemos seguir los pasos a continuación.
- pago a la rama de destino para fusionar la rama actual
- luego ejecuta el siguiente comando
git merge <name of the current branch>
Ahora hemos fusionado con éxito nuestras dos sucursales y, como puede ver, tenemos los mismos cambios o puede decir confirmaciones en nuestras dos sucursales.
Publicación traducida automáticamente
Artículo escrito por subrata03cse y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA