Fusión de ramas con git merge
Vamos a realizar un ejemplo paso a paso con Git, centrado en branches, merge y cómo resolver conflictos

Vamos a realizar un ejemplo paso a paso con Git, centrado en branches, merge y cómo resolver conflictos. Te lo explico como si lo estuviéramos haciendo en tu máquina.
🧠 Antes de empezar
- Recomiendo revisar la Instalación y Configuración de Git para que pueda realizar correctamente el ejercicio que vamos a realizar.
- Revisa y entiende los Estados de archivos en Git (
git status
,git add
,git commit
) para que pueda ver los distintos cambios realizados. - Realiza la primera confirmación de cambio de versiones.
🌿 Escenario: Dos personas editan el mismo archivo en diferentes ramas
Supongamos que tenemos un repositorio con un archivo llamado saludo.txt
.
1️⃣ Crear el repositorio y el archivo inicial
mkdir ejemplo-git cd ejemplo-git
git init
echo "Hola, mundo!" > saludo.txt
git add .
git commit -m "Commit inicial con saludo.txt"
2️⃣ Crear una nueva rama y modificar el archivo
git checkout -b rama-uno
echo "Este saludo viene de rama uno." >> saludo.txt
git add saludo.txt
git commit -m "Agregado texto desde rama uno"
3️⃣ Volver a main
y crear otra rama
git checkout main
git checkout -b rama-dos echo "Este saludo viene de rama dos." >> saludo.txt
git add saludo.txt
git commit -m "Agregado texto desde rama dos"
4️⃣ Unir ramas y generar conflicto
Ahora estás en rama-dos
, intenta hacer merge de rama-uno
en esta rama:
git merge rama-uno
💥 Aquí ocurre un conflicto porque ambos cambios están en la misma línea o muy cerca en el archivo saludo.txt
.
🔧 Cómo se ve un conflicto
Abre saludo.txt
y verás algo como:
Hola, mundo!
<<<<<<<
HEAD Este saludo viene de rama dos.
=======
Este saludo viene de rama uno.
>>>>>>>
rama-uno
Esto significa:
HEAD
= lo que está enrama-dos
rama-uno
= el contenido que estás tratando de unir
✅ Resolver el conflicto
Edita el archivo para que quede como tú quieras. Por ejemplo:
Hola, mundo! Este saludo viene de rama uno y rama dos.
Después:
git add saludo.txt
git commit -m "Conflicto resuelto entre rama uno y dos"
5️⃣ (Opcional) Unir a main
git checkout main
git merge rama-dos
Ya estaría todo fusionado correctamente.
🧠 Consejos para resolver conflictos
- Usa un editor como VS Code, Sublime o GitKraken que te muestre visualmente los conflictos.
- Siempre lee con calma qué rama representa cada cambio (
HEAD
y el otro nombre). - Si no estás seguro, puedes guardar una copia temporal antes de resolver.