Skip to main content

Combinación de una solicitud de incorporación de cambios

Fusionar las solicitudes de extracción en la rama upstream, elegir métodos de fusión y cumplir los requisitos del repositorio, como revisiones o comprobaciones de estado.

Tool navigation

Acerca de las integraciones de pull requests

Combine una solicitud de incorporación de cambios cuando los cambios propuestos estén listos y se cumplan los requisitos del repositorio. No puedes fusionar un pull request en borrador.

Las reglas del repositorio o la protección de rama pueden requerir revisiones, verificaciones de estado o una rama actualizada antes de fusionar. Consulte Acerca de las ramas protegidas.

Como alternativa a las reglas de protección de ramas, puede crear conjuntos de reglas. Los conjuntos de reglas tienen algunas ventajas sobre las reglas de protección de rama, como los estados, y una mejor detectabilidad sin necesidad de acceso de administrador. Puedes aplicar igualmente varios conjuntos de reglas al mismo tiempo. Para más información, consulta Acerca de los conjuntos de reglas.

Puedes configurar una solicitud de cambios para que se fusione automáticamente cuando se cumplan todos los requisitos de fusión. Para más información, consulta Fusionar una solicitud de cambios automáticamente.

Si la rama base requiere una cola de mezcla, las opciones de combinación disponibles difieren de las descritas aquí. Consulte Combinación de una solicitud de incorporación de cambios con una cola de fusión mediante combinación.

Si la solicitud de incorporación de cambios tiene conflictos de combinación o si desea probar primero los cambios, consulte la solicitud de incorporación de cambios localmente.

El repositorio puede eliminar automáticamente la rama principal después de la combinación. Consulte La gestión de la eliminación automática de ramas.

Nota:

Si borras una rama de encabezado después de haber fusionado su solicitud de extracción, GitHub verificará cualquier solicitud de extracción abierta en el mismo repositorio que especifique la rama borrada como su rama base. GitHub actualiza automáticamente cualquier solicitud de extracción, cambiando su rama base a la rama base de la solicitud de extracción que se ha fusionado.

Las solicitudes de extracción usan la opción --no-ff, excepto las solicitudes de extracción combinadas mediante squash o rebase, que usan la fusión de avance rápido.

Puede vincular una solicitud de incorporación de cambios a un problema para mostrar que una corrección está en curso y cerrar automáticamente el problema cuando se combina la solicitud de incorporación de cambios. Para más información, consulta Vincular una solicitud de cambios a una propuesta.

Si no desea combinar los cambios, puede cerrar la solicitud de incorporación de cambios.

Combinación de una solicitud de incorporación de cambios

  1. En el nombre del repositorio, haz clic en Pull requests.

    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 "Solicitudes de incorporación de cambios", haga clic en la solicitud de incorporación de cambios que desea combinar.

  3. Desplázate hasta el final de la pull request. En función de las opciones de combinación habilitadas para el repositorio, elija un método de combinación:

    Nota:

    Fusionar mediante cambio de base y combinar siempre actualizará la información de la persona que confirma el cambio y creará SHA de confirmación. Consulte Acerca de las fusiones de solicitudes de cambios.

  4. Si se te solicita, escribe un mensaje de confirmación o acepta el mensaje predeterminado.

    Para obtener información sobre los mensajes de confirmación predeterminados para las fusiones mediante combinación con "squash", consulta Fusiones de solicitudes de incorporación de cambios.

  5. Si tiene más de una dirección de correo electrónico asociada a su cuenta en , haga clic en GitHubel menú desplegable dirección de correo electrónico y seleccione la dirección de correo electrónico que se usará como dirección de correo electrónico del autor de Git. Únicamente las direcciones de correo electrónico verificadas aparecen en el menú desplegable. Si ha habilitado la privacidad de la dirección de correo electrónico, una dirección de correo electrónico de no respuesta será la dirección de correo electrónico predeterminada del autor del commit. Para más información sobre el formato exacto que puede tomar la dirección de correo electrónico sin respuesta, consulta Configurar tu dirección de correo electrónico de confirmación.

Captura de pantalla de una solicitud de cambios de GitHub en la que se muestra un menú desplegable con opciones para elegir la dirección de correo electrónico del creador de la confirmación.
octocat@github.com está seleccionado.

Nota:

El selector de correo electrónico no está disponible para las combinaciones de rebase, que no crean una confirmación de combinación. En el caso de las fusiones por aplastamiento, el selector de correo electrónico solo se muestra si usted es el autor de la solicitud de extracción y tiene más de una dirección de correo electrónico asociada a su cuenta.

  1. Haga clic en Confirm merge, Confirm squash and merge o Confirm rebase and merge.
  2. Opcionalmente, elimine la rama. Esto mantiene ordenado el listado de ramas en tu repositorio.

Nota:

Para más información sobre GitHub CLI, consulta Acerca de GitHub CLI.

Para fusionar un pull request, use el subcomando gh pr merge. Reemplace pull-request por el número, la dirección URL o la rama principal de la solicitud de incorporación de cambios.

gh pr merge PULL-REQUEST

Sigue los mensajes interactivos para completar la fusión. Consulte Fusiones de solicitudes de incorporación de cambios.

Como alternativa, puedes utilizar marcadores para omitir los mensajes interactivos. Por ejemplo, este comando agrupa los commits en un único commit con el mensaje de confirmación "my squash commit", fusiona el commit resultante en la rama base y, a continuación, elimina la rama local y la remota.

gh pr merge 523 --squash --body "my squash commit" --delete-branch

Lectura adicional