Cómo fusionar una rama de Git con otra
La fusión requiere dos comandos, pero la dirección hace tropezar a la gente y Git puede avanzar rápidamente o crear una confirmación de fusión. Aquí está la secuencia exacta, qué significa avance rápido y qué opción usar y cuándo.
Escrito por Kodmora
La casa de software detrás de GitTree
- fusionar
- Ramas
- Fusionar conflictos
En esta página
Para fusionar `feature` en `main`, cambie a la rama que recibe las confirmaciones, luego fusione la otra: `git switch main` seguida de `git merge feature`. La rama en la que se encuentra es la que cambia. Si main no tiene nuevas confirmaciones, Git lo adelanta. De lo contrario, crea una confirmación de fusión y se detiene si las dos partes entran en conflicto.
¿Cómo fusiono una rama paso a paso?
# get the latest
git fetch origin
# go to the branch that receives the work
git switch main
git pull --ff-only
# bring the other branch in
git merge feature/search
# publish it
git pushComience con un árbol limpio: confirme o guarde primero. Si cambias de opinión parcialmente, `git merge --abort` te lleva de regreso.
¿Hacia dónde va una fusión?
git merge X siempre significa "traer X a la rama en la que estoy". Entonces, fusionar feature en main se realiza desde main, mientras que actualizar feature con el último main se realiza desde feature:
# keep a feature branch up to date
git switch feature/search
git fetch origin
git merge origin/main¿Qué es una fusión rápida?
Si la rama receptora no tiene confirmaciones propias desde que la otra rama la abandonó, no hay nada que combinar. Git mueve el puntero de la rama hacia la última confirmación de la otra rama y no agrega ninguna confirmación de fusión. La historia sigue una línea recta. Git imprime Fast-forward cuando esto sucede.
# before
main: A---B
\
feature: C---D
# after a fast-forward merge
main: A---B---C---DCuando ambas ramas tienen nuevas confirmaciones, es imposible realizar un avance rápido, por lo que Git realiza una confirmación de fusión con dos padres. La lección de avance rápido y la lección sobre fusionar ramas divergentes muestran ambas en la práctica.
¿Qué hacen --ff-only, --no-ff y --squash?
| Opción | Resultado | Úselo cuando |
|---|---|---|
| (ninguno) | Avance rápido si es posible; de lo contrario, se realizará una confirmación de fusión | La mayoría de las fusiones cotidianas |
--ff-only | Avanzar rápido o detenerse ante un error | Actualizando main desde su remoto |
--no-ff | Siempre un commit de fusión | Quieres que cada característica sea visible en el historial |
--squash | Todos los cambios preparados, sin confirmación ni fusión registrada | Quieres un commit ordenado |
git merge --ff-only origin/main
git merge --no-ff feature/search
git merge --squash feature/search
git commit -m "feat(search): quick open"¿Qué sucede cuando la fusión entra en conflicto?
Git detiene y marca los archivos en conflicto. Edítelos, git add cada uno, luego ejecute git commit para finalizar la combinación. Cómo resolver conflictos de fusión explica los marcadores.
¿Puedo tomar un lado automáticamente?
# take their side wherever hunks conflict
git merge -X theirs feature/search
# take our side wherever hunks conflict
git merge -X ours feature/search
# during a merge, take one side of a whole file
git checkout --theirs path/to/file
git add path/to/file¿Debería fusionarme o cambiar de base?
Merge mantiene el historial exactamente como sucedió y nunca reescribe las confirmaciones, por lo que siempre es seguro en ramas compartidas. Rebase reproduce tus confirmaciones encima de otra rama en línea recta, pero las reescribe, así que mantenlo en las ramas que solo uses. La lección de fusión versus rebase pasa por las compensaciones.
¿Qué debo hacer después de fusionarme?
# check that the branch is fully merged
git branch --merged
# delete it locally and on the remote
git branch -d feature/search
git push origin --delete feature/searchCómo eliminar una rama cubre la limpieza. Para revertir una combinación que ya está enviada, consulte cómo revertir una confirmación de combinación.
Cómo fusionar una rama en GitTree
Consulte la rama receptora
Haga doble clic en la rama que debería recibir las confirmaciones, como
develop.Elige la rama a fusionar
Haga clic derecho en la etiqueta de la rama con el nuevo trabajo y elija Fusionar... en.... También puedes arrastrar una etiqueta sobre la otra.
Leer la vista previa
GitTree verifica primero y le indica Fusiona sin conflictos. o qué archivos se detendrán si hay un conflicto.
Elige cómo se graba
En Registrarlo como, seleccione Avance rápido si es posible; de lo contrario, una confirmación de fusión, Siempre una confirmación de fusión, Sólo avance rápido o Aplastar en cambios por etapas (sin confirmación), luego presione Fusionar.

Consulte fusionar ramas para cada opción.
Preguntas frecuentes
¿La fusión elimina la otra rama?
No. La otra rama se queda exactamente donde estaba. Bórrelo usted mismo cuando ya no lo necesite.
¿Cómo fusiono una rama con la principal en GitHub?
Abra una solicitud de extracción y presione Combinar. Si, en cambio, fusiona localmente, presione main después. La protección de ramas puede requerir la ruta de solicitud de extracción.
¿Qué significa “Ya actualizado”?
La rama en la que se encuentra ya contiene todas las confirmaciones de la otra rama, por lo que no hay nada que fusionar. Comprueba que estás en la rama correcta y ejecuta git fetch si esperabas nuevas confirmaciones remotas.
¿Qué significa “negarse a fusionar historias no relacionadas”?
Las dos ramas no comparten ningún commit común, a menudo porque un repositorio se inicializó dos veces. Si realmente quieres unirte a ellos, agrega --allow-unrelated-histories.
¿Es una fusión de squash una fusión real?
Un squash prepara los cambios combinados sin crear un commit ni registrar ascendencia de merge. Debes crear el commit. Incluso después, Git no registra la rama de origen como fusionada, por lo que git branch -d puede negarse a borrarla.
Fuentes
Las afirmaciones sobre otros productos se compararon con sus páginas oficiales el 8 de noviembre de 2026. Los precios y las características cambian; Las páginas de los proveedores son la fuente de la verdad.
