Skip to main content

Conflictos de fusión

Identifique y resuelva conflictos de fusión en Git para garantizar una integración fluida de ramas y fusiones correctas de solicitudes de extracción.

Por lo general, Git puede resolver las diferencias entre las ramas y fusionarlas automáticamente. Normalmente, los cambios se encuentran en líneas diferentes o en archivos diferentes, por lo que Git puede combinarlos sin ayuda. A veces, los cambios competidores necesitan su ayuda. Los conflictos de combinación a menudo se producen cuando las personas realizan cambios diferentes en la misma línea del mismo archivo, o cuando una persona edita un archivo y otra persona elimina el mismo archivo.

Los conflictos de combinación bloquean la combinación porque Git no puede elegir de forma segura qué versión del contenido en conflicto se debe mantener. Debe resolver todos los conflictos de combinación para poder fusionar un pull request en GitHub. Si la solicitud de incorporación de cambios tiene un conflicto de combinación entre la rama de comparación y la rama base, el botón Combinar solicitud de incorporación de cambios se desactiva hasta que se resuelven los conflictos.

Resolución de conflictos de combinación

Resolver un conflicto de combinación significa elegir el contenido final que debe aparecer después de combinar las ramas. La herramienta correcta depende del tipo de conflicto.

En la línea de comandos, Git indica cuándo una combinación no puede finalizar automáticamente. No puede insertar el resultado combinado hasta que resuelva el conflicto y confirme la resolución.

$ git merge BRANCH-NAME
> Auto-merging styleguide.md
> CONFLICT (content): Merge conflict in styleguide.md
> Automatic merge failed; fix conflicts and then commit the result

Lectura adicional