For the complete documentation index, see llms.txt. This page is also available as Markdown.

Resolución de conflictos de solicitudes de extracción

Escrito para la antigua interfaz de usuario

Resumen

Este artículo explica las razones detrás de los conflictos de Pull Request y los escenarios comunes en los que ocurren. También proporciona instrucciones detalladas, paso a paso, para revisar y resolver estos conflictos de manera efectiva.

¿Qué causa un conflicto de Pull Request?

Un conflicto de Pull Request puede ocurrir cuando dos ramas tienen commits que afectan la misma línea de código, y el Pull Request no puede determinar automáticamente qué línea conservar. Para ilustrar cómo puede suceder esto, consulta el diagrama a continuación.

En este ejemplo, branch_b se crea a partir de branch_a. A continuación, un cambio que afecta a la myName función se confirma en branch_b, y un cambio diferente en la función se confirma en branch_a. Cuando se crea un Pull Request para fusionar branch_b en branch_a, el pull request detecta que la misma línea de código ha cambiado en ambas ramas, lo que da lugar a un conflicto. En la siguiente sección, verás dos opciones diferentes para resolver el conflicto.

¿Cómo resolver un conflicto de Pull Request?

Cuando un Pull Request encuentra un conflicto, puedes resolverlo conservando o sobrescribiendo los cambios del destino. Para múltiples conflictos, aborda cada uno por separado usando el método más apropiado; está bien usar enfoques diferentes para distintos conflictos.

Conservar los cambios del destino

Para resolver conflictos usando este método, confirma las líneas en conflicto desde la rama de destino rama en la rama de origen rama. Consulta el diagrama para ver una ilustración y consulta las instrucciones paso a paso proporcionadas en la Resolución de conflictos de solicitudes de extracción sección a continuación.

Este método utiliza la Resolver conflictos función en un Pull Request para confirmar automáticamente los cambios en la rama de origen.

Sobrescribir los cambios del destino

Para resolver conflictos usando este método, confirma las líneas en conflicto desde la rama de origen rama en la rama de destino rama. Consulta el diagrama para ver una ilustración y consulta las instrucciones paso a paso proporcionadas en la Resolución de conflictos de solicitudes de extracción sección a continuación.

Este método requiere que confirmes manualmente los cambios desde la rama de origen rama en la rama de destino rama.

Resolución de conflictos

1

Conflictos de Pull Request

Cuando se crea un Pull Request, inicialmente se ejecuta una comprobación de conflictos. Si se encuentran conflictos entre las Destino y Origen ramas, se mostrará una advertencia y deberás resolver los conflictos antes de que el Pull Request pueda fusionarse.

2

Revisar conflictos

  1. Haz clic en Resolver conflictos.

  2. Haz clic en un componente para ver los conflictos.

  1. Revisa el código en conflicto en el componente y determina cómo resolver el conflicto.

Consulta la Resolución de conflictos de solicitudes de extracción sección anterior para una explicación de los conflictos de Pull Request.

  1. Hay dos formas de resolver un conflicto de Pull Request. Consulta las siguientes secciones para obtener instrucciones sobre cómo realizar cada una.

    1. Conservar los cambios del destino: Este método conserva el código del destino al confirmar las líneas en conflicto desde la rama de destino rama en la rama de origen rama.

    2. Sobrescribir los cambios del destino: Este método conserva el código del origen al confirmar las líneas en conflicto desde la rama de origen rama a la rama de destino rama.

Para múltiples conflictos, aborda cada uno por separado usando el método más apropiado; está bien usar enfoques diferentes para distintos conflictos.

3

Conservar los cambios del destino

Este método utiliza la Resolver conflictos función integrada en un Pull Request.

  1. Haz clic en un componente con conflictos para resolverlo.

  2. Haz clic en Aceptar todo para conservar todas las líneas, o haz clic en la Flecha derecha para cada línea que desees conservar. Esto copia la línea seleccionada de la rama de destino a la rama de origen.

  3. Una vez realizados todos los cambios necesarios en la rama de origen, haz clic en Resolver. Esto marca un componente como Resuelto para que puedas llevar un seguimiento de tus cambios.

  4. Haz clic en Atrás.

Repite este proceso para todos los componentes con conflictos.

  1. Una vez que todos los componentes estén marcados como Resuelto, haz clic en Resolver conflictos.

  2. Introduce un mensaje de commit.

  3. Haz clic en Resolver.

  4. Después de resolver los conflictos, el Pull Request volverá a comprobar si hay conflictos.

  5. Si ya no hay más conflictos, el mensaje del Pull Request se mostrará en verde y dirá "Esta rama se puede fusionar".

Si persisten conflictos en el Pull Request, revísalos y resuélvelos. Repite hasta que todos los problemas estén resueltos.

4

Sobrescribir los cambios del destino

Este método requiere editar y confirmar manualmente los cambios en la rama de destino.

Para facilitar la resolución de conflictos al sobrescribir cambios en la rama de destino, anota las líneas y componentes específicos que causan conflictos mientras revisas el Pull Request.

  1. Haz clic en Código desde el menú de la barra lateral izquierda.

  2. Haz clic en la rama de destino rama del Pull Request.

  3. Haz clic en la Tres Vertical puntos en el extremo derecho de un componente con conflictos en el Pull Request.

  4. Haz clic en Editar.

  5. Edita la línea o líneas de código en conflicto para que coincidan con la rama de origen rama.

  6. Haz clic en Confirmar cambios.

  7. Introduce un mensaje de commit.

  8. Haz clic en Confirmar.

Repite este proceso para todos los componentes con conflictos.

  1. Una vez que todos los componentes con conflictos se hayan editado para que coincidan con la rama de origen rama, vuelve al Pull Request.

  2. Haz clic en Pull Requests desde el menú de la barra lateral izquierda.

  3. Haz clic en el Pull Request para comprobar si todos los conflictos se han resuelto.

  4. Si ya no hay más conflictos, el mensaje del Pull Request se mostrará en verde y dirá "Esta rama se puede fusionar".

Si persisten conflictos en el Pull Request, revísalos y resuélvelos. Repite hasta que todos los problemas estén resueltos.

Última actualización

¿Te fue útil?