Completar, abandonar o revertir solicitudes de incorporación de cambios

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019 | TFS 2018

Visual Studio 2019 | Visual Studio 2022

Una vez que todos los revisores necesarios aprueben la solicitud de incorporación de cambios (PR) y la solicitud de incorporación de cambios cumpla todos los requisitos de la directiva de rama, puede combinar los cambios en la rama de destino y completar la solicitud de incorporación de cambios. O bien, si decide no continuar con los cambios en la solicitud de incorporación de cambios, puede abandonar la solicitud de incorporación de cambios.

Para abordar los cambios de los revisores y responder a los comentarios de revisión y resolverlos, consulte Responder a los comentarios.

Requisitos previos

  • Repos debe estar habilitado en el proyecto. Si el centro de Repos y las páginas asociadas no se muestran, vea Activación o desactivación de un servicio de Azure DevOps para volver a habilitar Repos.

  • Para completar la solicitud de incorporación de cambios, debe ser miembro del grupo de seguridad Colaboradores o tener los permisos correspondientes, en el proyecto en el que se encuentra la solicitud de incorporación de cambios.

  • Para contribuir a una solicitud de incorporación de cambios (PR), debe ser miembro del grupo de seguridad Lectores o tener los permisos correspondientes.

  • Para ver o revisar las solicitudes de incorporación de cambios, debe tener acceso Básico o superior al proyecto de Azure DevOps.

  • Si no es miembro del proyecto al que quiere contribuir, agréguese.

    Nota:

    En el caso de los proyectos públicos, los usuarios con acceso de parte interesada tienen acceso total a Azure Repos.

  • Repos debe estar habilitado en el proyecto. Si el centro de Repos y las páginas asociadas no se muestran, vea Activación o desactivación de un servicio de Azure DevOps para volver a habilitar Repos.
  • Para completar una solicitud de incorporación de cambios, debe ser miembro del grupo de seguridad Colaboradores o tener los permisos correspondientes, en el proyecto que quiera cambiar.
  • Para contribuir a una solicitud de incorporación de cambios (PR), debe ser miembro del grupo de seguridad Lectores o tener los permisos correspondientes.
  • Para ver o revisar solicitudes de incorporación de cambios, debe ser miembro del proyecto de Azure DevOps con acceso Básico o superior. Si no es miembro del proyecto, agréguese.
  • Para completar una solicitud de incorporación de cambios, debe ser miembro del grupo de seguridad Colaboradores para el proyecto de Azure DevOps o tener los permisos correspondientes.
  • Para ver o revisar solicitudes de incorporación de cambios, debe ser miembro del proyecto de Azure DevOps con acceso Básico o superior. Si no es miembro del proyecto, agréguese.
  • Para contribuir a una solicitud de incorporación de cambios, debe ser miembro del grupo de seguridad Lectores para el proyecto de Azure DevOps o tener los permisos correspondientes.

Comprobación de los cambios de combinación

Cuando se completa una solicitud de incorporación de cambios, Git agrega una nueva confirmación de fusión mediante combinación al final de la rama principal. Esta confirmación de fusión mediante combinación vincula los historiales anteriores de la rama principal y la rama de origen de pr. Para ver la confirmación de fusión mediante combinación en versión preliminar y comprobar si hay conflictos de combinación, seleccione el menú Más opciones en la esquina superior derecha de la página Información general de la solicitud de incorporación de cambios y, después, seleccione Ver cambios de combinación.

Si cambió la rama de destino después de crear la solicitud de incorporación de cambios, seleccione Reiniciar combinación para crear una nueva confirmación de combinación de vista previa y actualizar la vista de diferencias de cambio de combinación.

Captura de pantalla que muestra las opciones Ver combinación y Reiniciar combinación en el menú Más opciones de PR.

Revisión de directivas de rama

Los equipos pueden establecer directivas de rama que requieran solicitudes de incorporación de cambios en ramas protegidas para cumplir criterios específicos antes de que se puedan combinar las solicitudes de incorporación de cambios. Puede ver las directivas de rama en vigor para la solicitud de incorporación de cambios, tanto si son necesarias para la combinación como si la solicitud de incorporación de cambios se está aprobando o no.

En la pestaña Información general de la solicitud de incorporación de cambios se resumen las directivas de rama que pasan o producen errores en la solicitud de incorporación de cambios. La información general solo enumera las directivas con errores, pero puede ver todas las comprobaciones de directiva seleccionando Ver <>comprobaciones.

En la página Información general de PR, los requisitos de la directiva de rama tienen un icono . Seleccione Más opciones junto al requisito y, después, seleccione Ver directiva para ir a la página Directivas de rama de la rama en Configuración del proyecto.

Captura de pantalla que muestra Ver directiva junto a un requisito de directiva de rama en una PR.

Completar una solicitud de incorporación de cambios

Después de resolver los conflictos de combinación y la solicitud de incorporación de cambios cumple todas las directivas de rama y tiene todas las aprobaciones necesarias, puede completar la solicitud de incorporación de cambios.

  1. Seleccione Completar en la esquina superior derecha para completar la solicitud de incorporación de cambios. O bien, seleccione la flecha desplegable situada junto al botón Completar y seleccione una de las opciones.

    Captura de pantalla que muestra las opciones del botón Completar para una PR.

    • Completar: complete la solicitud de incorporación de cambios ahora y combine los cambios en la rama de destino.
    • Establecer autocompletar: configure la solicitud de incorporación de cambios para completarla y combinarla una vez que cumpla todas las directivas de rama necesarias.
    • Marcar como borrador: devuelva la solicitud de incorporación de cambios al estado de borrador y quite todos los votos.
    • Abandonar: cierre la solicitud de incorporación de cambios sin combinar los cambios.
  2. En el panel Completar solicitud de incorporación de cambios, en Tipo de combinación, seleccione una de las opciones de combinación.

    Captura de pantalla que muestra el cuadro de diálogo PR completo.

    • Fusionar mediante combinación (sin avance rápido): fusiona mediante combinación un historial no lineal que conserva todas las confirmaciones.
    • Confirmación de squash: combina con un historial lineal que combina todas las confirmaciones de origen en una sola confirmación en el destino o fusiona mediante combinación con "squash" la solicitud de incorporación de cambios. Tenga en cuenta que se creará una nueva confirmación para la rama de destino sin mantener el historial de confirmaciones de la rama de origen.
    • Fusionar mediante cambio de base y avance rápido: fusiona mediante cambio de base las confirmaciones de origen en el destino y avance rápido.
    • Fusionar mediante combinación semi lineal: fusiona mediante cambio base las confirmaciones de origen en el destino y crea una combinación de dos elementos primarios.

    Nota:

    Se aplican directivas existentes. Por ejemplo, si la rama tiene actualmente una directiva de "solo fusión mediante combinación con 'squash'", debe cambiar esa directiva si quiere usar otro tipo de combinación.

  3. Seleccione cualquiera de las siguientes opciones posteriores a la finalización. Algunas opciones no están disponibles para algunos tipos de combinación.

    • Completar los elementos de trabajo asociados después de combinar: completa los elementos de trabajo vinculados.
    • Eliminar <el nombre de la rama> después de la combinación: elimina la rama de origen de la solicitud de incorporación de cambios después de la combinación.
    • Personalizar el mensaje de confirmación de fusión mediante combinación: agrega un mensaje de confirmación de fusión mediante combinación personalizado. Si selecciona esta opción, actualice el mensaje de confirmación de fusión mediante combinación.
    • Invalidar directivas de rama y habilitar fusión mediante combinación Forzar la fusión mediante combinación incluso si la solicitud de incorporación de cambios no satisface todas las directivas de rama. Esta opción solo está disponible si dispone del permiso Exento de la aplicación de la directiva.
  4. Seleccione Completar la fusión mediante combinación.

  1. Seleccione Completar en la esquina superior derecha para completar la solicitud de incorporación de cambios. O bien, seleccione la flecha desplegable situada junto al botón Completar y seleccione una de las siguientes opciones.

    Captura de pantalla que muestra las opciones del botón Completar para una PR.

    • Completar: complete la solicitud de incorporación de cambios ahora y combine los cambios en la rama de destino.
    • Establecer autocompletar: si tiene directivas de rama, configure la solicitud de incorporación de cambios para completar y combinar una vez que cumpla todas las directivas de rama necesarias.
    • Abandonar: cierre la solicitud de incorporación de cambios sin combinar los cambios.
  2. En la pantalla Completar solicitud de incorporación de cambios, escriba el mensaje para la confirmación de fusión mediante combinación y actualice la descripción de la solicitud de incorporación de cambios.

    Cuadro de diálogo completar la de solicitud de incorporación de cambios

  3. Seleccione cualquiera de las siguientes opciones:

    • Completar los elementos de trabajo vinculados después de combinar para completar los elementos de trabajo vinculados.

    • Eliminar <branch name> después de la combinación para eliminar la rama de origen de la solicitud de incorporación de cambios.

    • Fusionar cambios mediante combinación concentrada para fusionar mediante combinación con "squash" la solicitud de incorporación de cambios. Tenga en cuenta que se creará una nueva confirmación para la rama de destino sin mantener el historial de confirmaciones de la rama de origen.

    • Invalide las directivas de rama y habilite la combinación para forzar que una rama se combine incluso si no satisface todas las directivas de rama. Esta opción solo está disponible si dispone de los permisos Exento de la aplicación de la directiva.

      Nota:

      Las directivas existentes todavía se aplican. Por ejemplo, si la rama tiene actualmente una directiva de "solo fusión mediante combinación con 'squash'" implementada, tiene que editar esa directiva para poder usar los demás tipos de combinación.

  4. Seleccione Completar la fusión mediante combinación.

Cuando se completa la combinación, los elementos de trabajo vinculados se actualizan automáticamente para mostrar la finalización de la solicitud de incorporación de cambios.

Captura de pantalla de los elementos de trabajo vinculados que muestran las PR completadas.

  1. Seleccione Completar en la esquina superior derecha de la vista pr para completar la solicitud de incorporación de cambios después de que los revisores aprueben los cambios.

    Botón de completar para la RP con sus opciones desplegables

    • Completar: complete la solicitud de incorporación de cambios ahora y combine los cambios en la rama de destino.
    • Establecer autocompletar: si tiene directivas de rama, puede elegir Establecer autocompletar para configurar la solicitud de incorporación de cambios para que se cierre una vez que cumpla todas las directivas de rama.
    • Abandonar: cierre la solicitud de incorporación de cambios sin combinar los cambios.
  2. En Completar solicitud de incorporación de cambios, escriba el mensaje para la confirmación de fusión mediante combinación y actualice la descripción de la solicitud de incorporación de cambios.

    Cuadro de diálogo completar PR

  3. Seleccione cualquiera de las siguientes opciones posteriores a la finalización:

    • Completar los elementos de trabajo vinculados después de combinar para completar los elementos de trabajo vinculados.
    • Eliminar <branch name> después de la combinación para eliminar la rama de origen de la solicitud de incorporación de cambios.
    • Fusionar cambios mediante combinación concentrada para fusionar mediante combinación con "squash" la solicitud de incorporación de cambios. Tenga en cuenta que se creará una nueva confirmación para la rama de destino sin mantener el historial de confirmaciones de la rama de origen.
    • Invalide las directivas de rama y habilite la combinación para forzar que una rama se combine incluso si no satisface todas las directivas de rama. Esta opción solo está disponible si dispone de los permisos Exento de la aplicación de la directiva.
  4. Seleccione Completar la fusión mediante combinación.

Los elementos de trabajo vinculados también se actualizan mostrando la finalización de la solicitud de incorporación de cambios.

Elementos de trabajo vinculados que muestran las PR completadas.

Fusionar mediante cambio de base durante la finalización de la solicitud de incorporación de cambios

Hay algunas situaciones en las que no es posible fusionar mediante cambio de base durante la finalización de la solicitud de incorporación de cambios:

  • Si una directiva de la rama de destino prohíbe el uso de estrategias de fusión mediante cambio de base, necesita el permiso Invalidar directivas de rama para fusionar mediante cambio de base.
  • Si la rama de origen de la solicitud de incorporación de cambios tiene directivas, no se puede fusionar mediante cambio de base. La fusión mediante cambio de base modificaría la rama de origen sin pasar por el proceso de aprobación de la directiva.
  • Si usó la extensión de conflicto de combinación para resolver conflictos de combinación, no se puede fusionar mediante cambio de base. Las resoluciones de conflictos aplicadas a una combinación triple rara vez son correctas o válidas al fusión mediante combinación todas las confirmaciones de solicitud de incorporación de cambios individualmente.

En todos estos casos, puede fusionar mediante cambio de base la rama localmente y, después, insertar ascendente o fusionar mediante combinación con "squash" los cambios cuando complete la solicitud de incorporación de cambios.

Problema de base de combinación múltiple

En algunos casos, una solicitud de incorporación de cambios tiene más de una base de combinación verdadera, situación que puede causar problemas de seguridad. Si los archivos de la solicitud de incorporación de cambios tienen versiones diferentes entre las bases de combinación, se produce una advertencia de varias bases de combinación. Para obtener más información y una corrección, consulte Varias bases de combinación.

Resolución de conflictos de combinación

Los cambios de archivo en la rama pueden entrar en conflicto con los cambios en otra rama. Cuando no está claro cómo combinar cambios, Git muestra los archivos que entran en conflicto en la página Información general de la solicitud de incorporación de cambios. Debe resolver los conflictos de combinación entre la rama de solicitud de incorporación de cambios y la rama de destino para poder combinar una solicitud de incorporación de cambios o establecer la solicitud de incorporación de cambios en autocompletar. Para instrucciones sobre cómo resolver conflictos de combinación, consulte Resolución de conflictos de combinación.

Captura de pantalla que muestra conflictos de combinación en la pestaña Información general de una PR.

Establecimiento de una solicitud de incorporación de cambios en autocompletar

Seleccione Establecer autocompletar en la lista desplegable Completar para completar y combinar los cambios de solicitud de incorporación de cambios en cuanto las condiciones cumplan todas las directivas de rama. Una vez completada la solicitud de incorporación de cambios, recibirá una notificación por correo electrónico. Si un conflicto o error impide la finalización de la solicitud de incorporación de cambios, el correo electrónico le notifica el problema.

Nota:

La opción Establecer autocompletar está disponible en Azure Repos y TFS 2017 y versiones posteriores cuando tiene directivas de rama. Si no ve Establecer autocompletar, no tiene ninguna directiva de rama. Para obtener más información, consulte Directivas de rama.

De forma predeterminada, una solicitud de incorporación de cambios establecida en autocompletar espera solo en las directivas necesarias. En el panel Habilitar finalización automática, también puede optar por esperar en directivas opcionales.

Captura de pantalla que muestra cómo cambiar una directiva opcional a requerida en el panel Habilitar finalización automática.

A partir de TFS 2018 Update 2, la página Información general de la solicitud de incorporación de cambios muestra la lista de criterios de directiva pendientes que la solicitud de incorporación de cambios está esperando. Si establece una directiva que se va a requerir en el panel Habilitar finalización automática, puede volver a establecerla en opcional en la página Información general.

Seleccione Cancelar autocompletar para desactivar autocompletar.

Captura de pantalla de una solicitud de incorporación de cambios en estado de autocompletar.

Captura de pantalla de una solicitud de incorporación de cambios en estado de autocompletar.

Una solicitud de incorporación de cambios establecida en Autocompletar muestra una notificación de Autocompletar en la página Solicitudes de incorporación de cambios.

Captura de pantalla en la que se muestra una solicitud de incorporación de cambios automática en la lista de solicitud de incorporación de cambios.

Abandonar o reactivar una solicitud de incorporación de cambios

Para abandonar los cambios y la solicitud de incorporación de cambios sin combinar, seleccione Abandonar en la lista desplegable del botón Completar. Todavía puede ver la solicitud de incorporación de cambios abandonada y permanece vinculada a los elementos de trabajo.

Para reactivar una solicitud de incorporación de cambios abandonada en cualquier momento, abra la solicitud de incorporación de cambios en la pestaña Abandonado en la vista Solicitud de incorporación de cambios y seleccione Reactivar en la esquina superior derecha.

Revertir una solicitud de incorporación de cambios completada

Para deshacer los cambios de una solicitud de incorporación de cambios, siga estos pasos. Para obtener más información, consulte Deshacer cambios.

  1. Abra la solicitud de incorporación de cambios completada y seleccione Revertir. Esta acción crea una nueva rama con cambios que deshacen la solicitud de incorporación de cambios en una rama de destino existente en el repositorio.

  2. En el panel Revertir solicitud de incorporación de cambios:

    1. En Rama de destino, seleccione la rama en la que quiere deshacer los cambios de solicitud de incorporación de cambios.
    2. En Nombre de rama puntual necesario, cambie el nombre de la rama de solicitud de incorporación de cambios si quiere.
    3. Seleccione Revertir.
  3. En la pantalla Nueva solicitud de incorporación de cambios, seleccione Crear.

  4. Combine la nueva solicitud de incorporación de cambios para completar la reversión.

Nota:

La rama creada durante esta reversión tiene una única confirmación que revierte todos los cambios de archivo de la solicitud de incorporación de cambios original. La rama no contiene una confirmación revertida para cada una de las confirmaciones de la solicitud de incorporación de cambios original.

Pasos siguientes