> For the complete documentation index, see [llms.txt](https://docs.flosum.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flosum.com/devops/devops-es/solicitudes-de-extraccion/proceso-de-solicitud-de-extraccion/resolucion-de-conflictos-de-solicitudes-de-extraccion.md).

# Resolución de conflictos de solicitudes de extracción

{% hint style="warning" %}

#### Escrito para la antigua interfaz de usuario

Este artículo fue escrito para la antigua interfaz de usuario. Las instrucciones todavía se pueden usar, pero las capturas de pantalla están desactualizadas. En algunos casos, los elementos mencionados en las instrucciones se han movido o cambiado. Si no puede encontrar un elemento, consulte el [¿Dónde quedó?](/devops/devops-es/transicion-a-la-nueva-ui-ux/donde-quedo.md) artículo.
{% endhint %}

## ![](https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FG5ZbxX918xOHwbAwAJ4n%2FSummary2-Small-Icon.svg?alt=media\&token=da26a67f-ff7f-47b3-8669-06be960dc2d7) 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.

<div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2F3eIOztucBaSOKuGON5bV%2FPull%20Request%20Conflict%20-%20Figure%201.png?alt=media&amp;token=6e11e440-bc32-4289-86b2-e757c420a2e0" alt="" width="563"><figcaption></figcaption></figure></div>

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.

<details>

<summary>Conservar los cambios del destino</summary>

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 [#retain-target-changes-1](#retain-target-changes-1 "mention") sección a continuación.

{% hint style="info" %}
Este método utiliza la **Resolver conflictos** función en un Pull Request para confirmar automáticamente los cambios en la rama de origen.
{% endhint %}

<figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FfdBOyMKCsalcBawvM7ED%2FPull%20Request%20Conflict%20-%20Figure%202.png?alt=media&amp;token=6e3f9324-daa3-468b-9e27-8c0376830794" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Sobrescribir los cambios del destino</summary>

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 [#overwrite-target-changes-1](#overwrite-target-changes-1 "mention") sección a continuación.

{% hint style="info" %}
Este método requiere que confirmes manualmente los cambios desde la **rama de origen** rama en la **rama de destino** rama.
{% endhint %}

<figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FVaZecNF0HTB21tlT1oKW%2FPull%20Request%20Conflict%20-%20Figure%203.png?alt=media&amp;token=1c8af0e0-97e7-46dd-a428-1f4b66e1e341" alt=""><figcaption></figcaption></figure>

</details>

## Resolución de conflictos

{% stepper %}
{% step %}

### 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.

<div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FK9JALbdKadbvEFqPe00z%2FResolvingPullRequestConflicts-S01-01.png?alt=media&amp;token=4973d672-8444-46fe-8e35-150acd351ba8" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}

### Revisar conflictos

1. Haz clic en **Resolver conflictos**.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2F8pYu7mdbTdXEXva8Zf23%2FResolvingPullRequestConflicts-S02-01.png?alt=media&amp;token=a13bbbd4-870d-4895-b5d7-17598f9f799b" alt="" width="563"><figcaption></figcaption></figure></div>
2. Haz clic en un componente para ver los conflictos.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2Fhd7mmwFjgbQRTVwIIkud%2FResolvingPullRequestConflicts-S02-02.png?alt=media&amp;token=c2864009-da37-4116-b9fa-4b2ffbbb46f1" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="warning" %}
Todos los componentes deben revisarse y resolverse.
{% endhint %}

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

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FJOCmqXNWisObvgSQHKGr%2FResolvingPullRequestConflicts-S02-03.png?alt=media&amp;token=9b9f9a30-b3e2-40ea-948c-5dccc2b3fd54" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Consulta la [#what-causes-a-pull-request-conflict](#what-causes-a-pull-request-conflict "mention") sección anterior para una explicación de los conflictos de Pull Request.
{% endhint %}

4. 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.

{% hint style="info" %}
Para múltiples conflictos, aborda cada uno por separado usando el método más apropiado; está bien usar enfoques diferentes para distintos conflictos.
{% endhint %}
{% endstep %}

{% step %}

### 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.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FnhVr1raQZTvAcw9WOc0C%2FResolvingPullRequestConflicts-S03-01.png?alt=media&amp;token=5b31efc1-49e1-440a-bc96-6b814a4b2486" alt="" width="563"><figcaption></figcaption></figure></div>
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.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FBg7oBwXUrHGZ38xWlH0q%2FResolvingPullRequestConflicts-S03-02.png?alt=media&amp;token=9daa3a07-3fab-4016-b589-231f4b0e2143" alt="" width="563"><figcaption></figcaption></figure></div>
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**.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FaOEtG2UOuvfX4mfiHKPf%2FResolvingPullRequestConflicts-S03-03.png?alt=media&amp;token=d831374c-a137-4036-a4c3-ff853431d6e4" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Repite este proceso para todos los componentes con conflictos.
{% endhint %}

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

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FSmVZ0MxD4NguSwB7dtNl%2FResolvingPullRequestConflicts-S03-04.png?alt=media&amp;token=40f79012-9e17-4f74-b4aa-f8eeef229c93" alt="" width="563"><figcaption></figcaption></figure></div>
6. Introduce un **mensaje de commit**.
7. Haz clic en **Resolver**.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FaOXu8XK1s9ePPohbfp9D%2FResolvingPullRequestConflicts-S03-05.png?alt=media&amp;token=4ae6eb1f-e6b8-4bc9-81d1-00a5e20eb8d8" alt="" width="375"><figcaption></figcaption></figure></div>
8. Después de resolver los conflictos, el Pull Request volverá a comprobar si hay conflictos.
9. Si ya no hay más conflictos, el mensaje del Pull Request se mostrará en verde y dirá "Esta rama se puede fusionar".

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2F4DbE815qPh7WKEA1uXtk%2FResolvingPullRequestConflicts-S03-06.png?alt=media&amp;token=99b78d90-5278-478b-8182-3c5ab325a9eb" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Si persisten conflictos en el Pull Request, revísalos y resuélvelos. Repite hasta que todos los problemas estén resueltos.
{% endhint %}
{% endstep %}

{% step %}

### Sobrescribir los cambios del destino

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

{% hint style="info" %}
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.
{% endhint %}

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.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FVdGI0XqpcphJPuoqXMfn%2FResolvingPullRequestConflicts-S04-01.png?alt=media&amp;token=30f3e50f-f1aa-41fa-b814-9c109f8342b7" alt="" width="563"><figcaption></figcaption></figure></div>
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**.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2F5g5ClKMeHBcegHcwiUOW%2FResolvingPullRequestConflicts-S04-02.png?alt=media&amp;token=c2446acd-0011-498a-aa3a-f5277d191ed5" alt="" width="563"><figcaption></figcaption></figure></div>
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**.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FwzKDv4loReHxkn6mJTem%2FResolvingPullRequestConflicts-S04-04.png?alt=media&amp;token=3e5c1d17-4228-478e-95e1-5823bd154d67" alt="" width="563"><figcaption></figcaption></figure></div>
7. Introduce un **mensaje de commit**.
8. Haz clic en **Confirmar**.

   <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2Fs8v4c5oagdYwOQ7cMc86%2FResolvingPullRequestConflicts-S04-05.png?alt=media&amp;token=bb1bd0af-51f9-42e6-abf0-1ffb2ee13dbc" alt="" width="375"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Repite este proceso para todos los componentes con conflictos.
{% endhint %}

9. Una vez que todos los componentes con conflictos se hayan editado para que coincidan con la **rama de origen** rama, vuelve al Pull Request.
10. Haz clic en **Pull Requests** desde el menú de la barra lateral izquierda.
11. Haz clic en el Pull Request para comprobar si todos los conflictos se han resuelto.

    <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2Fp64mN9HFNBOa33H6VsOs%2FResolvingPullRequestConflicts-S04-06.png?alt=media&amp;token=3866aa56-1b59-49de-b255-a48b7fb68f1a" alt="" width="563"><figcaption></figcaption></figure></div>
12. Si ya no hay más conflictos, el mensaje del Pull Request se mostrará en verde y dirá "Esta rama se puede fusionar".

    <div align="left"><figure><img src="https://2574462044-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRpUu5iMlzMFAudyBvMOl%2Fuploads%2FPLcM3AH2yPcm2RXGsPDY%2FResolvingPullRequestConflicts-S04-07.png?alt=media&amp;token=857898d0-5d1b-4374-b540-6a7729b44b23" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
Si persisten conflictos en el Pull Request, revísalos y resuélvelos. Repite hasta que todos los problemas estén resueltos.
{% endhint %}
{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.flosum.com/devops/devops-es/solicitudes-de-extraccion/proceso-de-solicitud-de-extraccion/resolucion-de-conflictos-de-solicitudes-de-extraccion.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
