Skip to main content

Resolver un conflicto de fusión en GitHub

Puedes resolver conflictos de fusión simples que impliquen realizar cambios de líneas en GitHub, usando el editor de conflictos.

Solo puedes resolver los conflictos de fusión en GitHub Enterprise Server que hayan sido provocados por realizar cambios de líneas, como cuando las personas hacen cambios diferentes en la misma línea del mismo archivo en ramas diferentes de tu repositorio de Git. Para todos los demás tipos de conflictos de fusión, debes resolver el conflicto de manera local desde la línea de comando. Para obtener más información, vea «Resolver un conflicto de fusión con la línea de comando».

Si un administrador del sitio deshabilita el editor de conflictos de combinación para las solicitudes de incorporación de cambios entre repositorios, no podrá usarlo en GitHub Enterprise Server y tendrá que resolver los conflictos de combinación desde la línea de comandos. Por ejemplo, si el editor de conflictos de fusión está inhabilitado, no podrás utilizarlo en una solicitud de extracción entre una bifurcación y el repositorio ascendente.

Warning

Al resolver un conflicto de fusión mediante combinación en GitHub Enterprise Server, toda la rama base de la solicitud de cambios se combina en la rama principal activa. Asegúrate que realmente quieras hacer una confirmación para esta rama. Si la rama de encabezado es la predeterminada para tu repositorio, se te dará la opción de crear una rama nueva para que funcione como rama de encabezado para tu solicitud de extracción. Si la rama principal está protegida, no podrás fusionar tu resolución de conflictos con ella, así que se te pedirá crear una nueva rama principal. Para obtener más información, vea «Acerca de las ramas protegidas».

  1. En el nombre del repositorio, haga clic en Solicitudes de incorporación de cambios.

    Captura de pantalla de la página principal de un repositorio. En la barra de navegación horizontal, una pestaña, con la etiqueta "Solicitudes de incorporación de cambios", se destaca en naranja oscuro.

  2. En la lista de "Pull Requests" (Solicitudes de extracción), haz clic en la solicitud de extracción con un conflicto de fusión que quieres resolver.

  3. Junto a la parte inferior de la solicitud de incorporación de cambios, haga clic en Resolver conflictos.

    Captura de pantalla de una advertencia de que una solicitud de incorporación de cambios tiene un conflicto de combinación. El botón "Resolver conflictos de combinación" está resaltado en naranja oscuro.

    Note

    Si el botón Resolve conflicts está desactivado, significa que el conflicto de fusión mediante combinación de la solicitud de cambios es demasiado complejo para resolverlo en GitHub Enterprise Server o que el administrador del sitio ha deshabilitado el editor de conflictos para las solicitudes de cambios entre los repositorios. Debes resolver el conflicto de fusión utilizando un cliente de Git alterno, o utilizando Git en la línea de comandos. Para más información, consulta "Resolver un conflicto de fusión con la línea de comando".

  4. Decide si quieres mantener únicamente los cambios de tu rama, mantener únicamente los cambios de las demás ramas, o hacer un cambio nuevo, el cual puede incorporar cambios de ambas ramas. Elimine los marcadores <<<<<<<, ======= y >>>>>>> en conflicto, y realice los cambios deseados en la combinación final.

  5. Si tienes más de un conflicto de fusión en tu archivo, desplázate hacia abajo hasta el siguiente conjunto de marcadores de conflicto y repite los pasos cuatro y cinco para resolver el conflicto de fusión.

  6. Una vez que haya resuelto todos los conflictos en el archivo, haga clic en Marcar como resueltos.

    Captura de pantalla del editor para resolver un conflicto de combinación en una solicitud de incorporación de cambios. El botón "Marcar como resuelto" está resaltado en naranja oscuro.

  7. Si tienes más de un archivo con conflictos, selecciona el siguiente archivo que quieres editar del lado izquierdo de la página en "conflicting files" (archivos conflictivos) y repite los pasos cuatro a siete hasta que hayas resuelto todos los conflictos de fusión de tu solicitud de extracción.

  8. Una vez que haya resuelto todos los conflictos de fusión mediante combinación, haga clic en Confirmar combinación. Esto fusiona toda la rama de base con tu rama de encabezado.

    Captura de pantalla del editor para resolver un conflicto de combinación en una solicitud de incorporación de cambios. El botón "Confirmar combinación" está resaltado en naranja oscuro.

  9. Si se te solicita, revisa la rama para la que vas a confirmar.

    Si la rama principal es la rama predeterminada del repositorio, puedes escoger ya sea actualizar esta rama con los cambios que hiciste para resolver el conflicto, o crear una rama nueva y utilizarla como la rama principal de la solicitud de extracción.

    Si eliges crear una rama nueva, ingresa un nombre para ésta.

    Si la rama principal de tu solicitud de extracción está protegida, debes crear una rama nueva. No tendrás la opción para actualizar la rama protegida.

    Haz clic en Crear rama y actualizar mi solicitud de incorporación de cambios o Entiendo, continuar la actualización de RAMA. El texto del botón corresponde a la acción que estás realizando.

  10. Para fusionar mediante combinación la solicitud de incorporación de cambios, haga clic en Combinar solicitud de incorporación de cambios. Para más información sobre otras opciones de combinación de solicitudes de incorporación de cambios, consulta "Combinación de una solicitud de incorporación de cambios".

Información adicional