Merge (fusión)
Juntar los cambios de una rama en otra; normalmente, traer la rama de trabajo a main cuando está lista.
✦Apagada: responde bien la pregunta del final para encenderla
También lo verás como: fusión · fusionar · git merge · conflicto · conflictos · conflicto de merge
Analogía
Incorporar las correcciones del borrador al documento original.
Cómo se hace
git switch main ← vas a la rama que recibe
git merge nombre-rama ← traes los cambios
Conflictos
Si las dos ramas cambiaron la misma línea de forma distinta, Git no adivina cuál quieres: te pregunta. El archivo queda así:
<<<<<<< HEAD
Abierto hasta las 20:00
=======
Abierto hasta las 21:00
>>>>>>> horario-verano
- Arriba: lo que había en tu rama actual. Abajo: lo que llega.
- Lo resuelves dejando el texto correcto y borrando las marcas. VS Code pone botones encima: Aceptar actual / Aceptar entrante / Aceptar ambos.
- Después:
git add archivoygit commit.
Un conflicto no es un error ni una catástrofe. Es Git siendo prudente en lugar de borrar algo sin avisarte.
Con IA
Claude puede resolver conflictos, pero revisa el resultado con el diff: es exactamente el sitio donde se pierden cambios sin que nadie se dé cuenta.
Un paso más: cuándo hay conflicto y cuándo no
Git fusiona solo, sin preguntarte, casi siempre:
- Si las dos ramas tocaron archivos distintos → sin problema.
- Si tocaron el mismo archivo en zonas distintas → sin problema.
- Solo si tocaron las mismas líneas → conflicto.
Cuando hay conflicto, Git se queda a medias: git status te dice qué archivos faltan por resolver. Tienes dos salidas, y las dos son seguras: resolverlo, o cancelar con git merge --abort y volver a como estabas.
Los conflictos se evitan con la misma medicina que todo lo demás: cambios pequeños y fusionados pronto. Una rama que vive tres semanas choca con todo.
¿Qué es un conflicto de merge?
Ver también
rama · pull request · diff