Combinación de una solicitud de extracción - Amazon CodeCatalyst

Combinación de una solicitud de extracción

Una vez que se haya revisado el código y todos los revisores necesarios lo hayan aprobado, puede combinar una solicitud de extracción en la consola de CodeCatalyst mediante una estrategia de combinación compatible, como la de avance rápido. No todas las estrategias de combinación compatibles con la consola de CodeCatalyst están disponibles como opciones para todas las solicitudes de extracción. CodeCatalyst evalúa la combinación y solo permite elegir entre las estrategias de combinación que estén disponibles en la consola y que permitan combinar la ramificación de origen con la de destino. También puede combinar una solicitud de extracción con las estrategias de combinación de Git que prefiera ejecutando el comando git merge en el equipo local o en un entorno de desarrollo para combinar la ramificación de origen con la de destino. A continuación, puede enviar esos cambios de la ramificación de destino al repositorio de código fuente de CodeCatalyst.

nota

La combinación de las ramificaciones la inserción de los cambios en Git no cierra automáticamente la solicitud de extracción.

Si tiene el rol de administrador del proyecto, también puede optar por combinar una solicitud de extracción que aún no cumpla todos los requisitos y las normas de aprobación.

Combinación de una solicitud de extracción (consola)

Puede combinar una solicitud de extracción en la consola de CodeCatalyst si no hay conflictos de combinación entre las ramificaciones de origen y de destino y si todos los revisores necesarios han aprobado la solicitud de extracción. Si hay conflictos o si la combinación no se puede completar, el botón de combinación estará inactivo y aparecerá la etiqueta No se puede combinar. En ese caso, debe obtener la aprobación de los aprobadores necesarios, resolver los conflictos localmente (en su caso) e introducir esos cambios antes de poder realizar la combinación. Al combinar una solicitud de extracción, se enviará automáticamente un correo electrónico al creador de la solicitud de extracción, así como a los revisores necesarios u opcionales. No se cerrará ni cambiará automáticamente el estado de ningún problema relacionado con la solicitud de extracción.

sugerencia

Como parte de su configuración de perfil, puede establecer de qué eventos de solicitudes de extracción quiere recibir correos electrónicos. Para obtener más información, consulte Envío de notificaciones de Slack y por correo electrónico desde CodeCatalyst.

Combinación de una solicitud de extracción
  1. Vaya al proyecto en el que quiera combinar una solicitud de extracción.

  2. En la página del proyecto, en Solicitudes de extracción abiertas, elija la solicitud de extracción que quiera combinar. Si no ve la solicitud de extracción, seleccione Ver todas las solicitudes de extracción y, a continuación, selecciónela de la lista. Como alternativa, en el panel de navegación, seleccione Código, luego Solicitudes de extracción y, a continuación, elija la solicitud de extracción que quiera combinar. Seleccione Combinar.

  3. Elija entre las estrategias de combinación disponibles para la solicitud de extracción. Puede seleccionar o deseleccionar la opción para eliminar la ramificación de origen después de combinar la solicitud de extracción; después, seleccione Combinar.

    nota

    Si el botón Combinar está inactivo o ve la etiqueta No se puede combinar, significa que los revisores necesarios aún no han aprobado la solicitud de extracción o que la solicitud de extracción no se puede combinar en la consola de CodeCatalyst. Si un revisor no ha aprobado una solicitud de extracción, aparece el icono de un reloj en el área Detalles de la solicitud de extracción en la sección Información general. Si todos los revisores necesarios han aprobado la solicitud de extracción, pero el botón Combinar sigue inactivo, es posible que se esté produciendo un conflicto de combinación. Seleccione la etiqueta subrayada No se puede combinar para ver más detalles sobre por qué la solicitud de extracción no se puede combinar. Puede resolver los conflictos de combinación de la ramificación de destino en un entorno de desarrollo o en la consola de CodeCatalyst y, a continuación, combinar la solicitud de extracción, o puede resolver los conflictos y realizar la combinación localmente para después enviar la confirmación que contiene la combinación a la ramificación de origen en CodeCatalyst. Para obtener más información, consulte Combinación de una solicitud de extracción (Git) y la documentación de Git.

Anulación de los requisitos de combinación

Si tiene el rol de administrador del proyecto, puede optar por combinar una solicitud de extracción que aún no cumpla todas las aprobaciones necesarias y las normas de aprobación. A esto se le denomina anulación de los requisitos de una solicitud de extracción. Puede decidir hacerlo si uno de los revisores necesarios no está disponible o si surge la necesidad urgente de combinar una solicitud de extracción específica en una ramificación que tenga reglas de aprobación que no se puedan cumplir rápidamente.

Combinación de una solicitud de extracción
  1. En la solicitud de extracción para la que quiera anular los requisitos y llevar a cabo la combinación, seleccione la flecha desplegable situada junto al botón Combinar. Seleccione Anular requisitos de aprobación.

  2. En Motivo de anulación, proporcione detalles sobre por qué está combinando esta solicitud de extracción sin cumplir las normas de aprobación ni los requisitos de revisores requeridos. Este paso es opcional, pero muy recomendable.

  3. Puede elegir una estrategia de combinación o aceptar la predeterminada. También puede decidirse por actualizar el mensaje de confirmación generado automáticamente con más detalles.

  4. Seleccione o deseleccione la opción para eliminar la ramificación de origen al realizar la combinación. Recomendamos que mantenga la ramificación de origen a la hora de anular los requisitos para combinar una solicitud de extracción hasta que haya tenido la oportunidad de revisar la decisión con otros miembros del equipo.

  5. Seleccione Combinar.

Combinación de una solicitud de extracción (Git)

Git admite muchas opciones para combinar y administrar ramificaciones. Los siguientes comandos son algunas de las opciones que puede utilizar. Para obtener más información, consulte la documentación disponible en el sitio web de Git. Una vez que haya combinado y enviado los cambios, cierre manualmente la solicitud de extracción. Para obtener más información, consulte Cierre de una solicitud de extracción.

Comandos comunes de Git para combinar ramificaciones

Combina los cambios de la ramificación de origen en el repositorio local con la ramificación de destino en el repositorio local.

git checkout destination-branch-name

git merge source-branch-name

Combina la ramificación de origen con la de destino, especificando una combinación de avance rápido. Esto combina las ramificaciones y traslada el puntero de la ramificación de destino al extremo de la ramificación de origen.

git checkout destination-branch-name

git merge --ff-only source-branch-name

Combina la ramificación de origen con la de destino, especificando una combinación de compactar. Esto combina todas las confirmaciones de la ramificación de origen en una sola confirmación de combinación en la ramificación de destino.

git checkout destination-branch-name

git merge --squash source-branch-name

Combina la ramificación de origen con la de destino, especificando una combinación de tres vías. Esto crea una confirmación de combinación y agrega las confirmaciones individuales de la ramificación de origen a la ramificación de destino.

git checkout destination-branch-name

git merge --no-ff source-branch-name

Elimina la ramificación de origen del repositorio local. Esto resulta útil para limpiar un repositorio local después de combinarlo con la ramificación de destino y enviar los cambios al repositorio de código fuente.

git branch -d source-branch-name

Elimina la ramificación de origen del repositorio remoto (el repositorio de código fuente en CodeCatalyst) utilizando el apodo especificado por el repositorio local para el repositorio remoto. (Observe el uso de los dos puntos (:)). También puede especificar --delete como parte del comando.

git push remote-name :source-branch-name

git push remote-name --delete source-branch-name