Control de versiones · Ramas y fusiones

git merge | Join two development histories together

Trae los commits de otra rama a la tuya. Si tu rama no se movió desde que nació la otra, git ni siquiera crea un commit: adelanta el puntero, lo que se llama avance rápido. Si las dos avanzaron, crea un commit de fusión con dos padres.

Sintaxis Estándar

git merge RAMA
git merge --no-ff RAMA

Parámetros Soportados

Flag Nombre Largo Descripción
(sin banderas) Avance rápido si se puede; si no, commit de fusión.
--no-ff Fuerza el commit de fusión aunque el avance rápido fuera posible, para que la rama quede visible en el historial.
--abort Cancela una fusión que quedó a medias por conflictos y deja todo como estaba.

Caso Práctico

Incorporar una funcionalidad terminada, desde la rama que la recibe:

git switch main git merge corte-por-mora

El error que comete todo el mundo

La fusión se ejecuta desde la rama que RECIBE. Un error clásico es estar parado en la rama de la funcionalidad y fusionar main ahí: funciona, pero hace lo contrario de lo que se quería.

Laboratorio Interactivo

Asistente de Laboratorio SudoQuest
Esperando comandos... Escribe una instrucción en la terminal interactiva para desglosar su comportamiento aquí.

Otras fichas en Ramas y fusiones