Mejora de las descripciones de solicitudes de extracción mediante plantillas

Azure Repos | Azure DevOps Server 2020 | Azure DevOps Server 2019

Escribir descripciones de solicitudes de extracción correctas es una excelente manera de ayudar a los revisores a saber qué esperar al revisar el código. También son una excelente manera de ayudar a realizar un seguimiento de las cosas que se deben realizar para cada cambio, como las pruebas, la adición de pruebas unitarias y la actualización de la documentación. Las plantillas de solicitud de extracción pueden ayudar a los desarrolladores a crear excelentes descripciones de solicitudes de extracción que cumplan los estándares de su organización.

En este artículo se muestra cómo empezar a trabajar con plantillas de solicitud de extracción.

Nota

Las plantillas de solicitud de extracción pueden proporcionar instrucciones, pero solo son de asesoramiento. Use directivas de rama para aplicar procedimientos recomendados, como requerir solicitudes de extracción para ramas clave como maestra, requerir una compilación correcta y aplicar revisores necesarios. Para obtener más información, vea directivas de rama.

¿Qué es una plantilla de solicitud de extracción?

Una plantilla de solicitud de extracción es un archivo que contiene texto markdown que se agrega a la descripción de la solicitud de extracción cuando se crea la solicitud de extracción.

Thank you for your contribution to the Fabrikam Fiber repo. 
Before submitting this PR, please make sure:

- [ ] Your code builds clean without any errors or warnings
- [ ] You are using approved terminology
- [ ] You have added unit tests

Azure Repos permite crear el siguiente tipo de plantillas de solicitud de extracción:

  • Una plantilla de solicitud de extracción predeterminada que se aplica automáticamente para todas las nuevas solicitudes de extracción del repositorio, a menos que se invalide por una plantilla de solicitud de extracción específica de rama.
  • Plantillas de solicitud de extracción específicas de rama que se aplican automáticamente a las solicitudes de extracción destinadas a una rama específica
  • Plantillas de solicitud de extracción adicionales que el creador de la solicitud de extracción puede agregar opcionalmente

El tipo de plantilla de solicitud de extracción viene determinado por su ubicación de nombre de archivo y carpeta, como se trata en las secciones siguientes. Los nombres de archivo y las ubicaciones de carpeta no distinguen mayúsculas de minúsculas, pero deben estar en la rama predeterminada del repositorio.

Nota

Todos los archivos de plantilla de solicitud de extracción deben encontrarse en la rama predeterminada (normalmente maestra) del repositorio. Solo se usan archivos de plantilla de solicitud de extracción de la rama predeterminada.

Plantillas de solicitud de extracción predeterminadas

Las plantillas de solicitud de extracción predeterminadas se aplican automáticamente al campo de descripción cuando se crea una nueva solicitud de extracción. Para configurar el repositorio con una plantilla de solicitud de extracción predeterminada, cree un archivo denominado o y guárdelo en la rama predeterminada del repositorio en una de las pull_request_template.mdpull_request_template.txt carpetas siguientes.

  • Una carpeta denominada .azuredevops que se encuentra en la carpeta raíz del repositorio
  • Una carpeta denominada .vsts que se encuentra en la carpeta raíz del repositorio
  • Una carpeta denominada docs que se encuentra en la carpeta raíz del repositorio
  • La carpeta raíz del repositorio

Se proporcionan varias ubicaciones para ofrecer flexibilidad en la ubicación en la que almacena las plantillas de solicitud de extracción. Cuando se crea una solicitud de extracción, Azure Repos busca en las carpetas designadas en el orden especificado y usa la primera plantilla de solicitud de extracción predeterminada que encuentra.

Cuando se crea una nueva solicitud de extracción en el repositorio, a menos que se aplique una plantilla de solicitud de extracción específica de rama, el contenido de la plantilla de solicitud de extracción predeterminada se usa para rellenar previamente el campo de descripción en la solicitud de extracción.

Plantilla de solicitud de extracción predeterminada

Puede editar o agregar a esta descripción y anexar plantillas de solicitud de extracción adicionales si lo desea seleccionándolos en la lista desplegable Agregar una plantilla.

Nota

Cuando se aplica automáticamente una plantilla de solicitud de extracción predeterminada o específica de rama, reemplaza los mensajes de confirmación estándar que normalmente se usan para la descripción predeterminada. Puede volver a agregarlos seleccionando Agregar mensajes de confirmación.

Plantillas de solicitud de extracción específicas de rama

Las plantillas de solicitud de extracción específicas de rama se pueden configurar para las solicitudes de extracción que tienen como destino una rama específica. Para configurar el repositorio con una plantilla de solicitud de extracción específica de rama, cree un .txt archivo o denominado después de la .md rama. El nombre debe coincidir con el primer nivel del nombre de la rama, como master , dev , o releasefeature . Cada plantilla de solicitud de extracción específica de rama se aplica cada vez que una solicitud de extracción tiene como destino esa rama o cualquier rama contenida en ella. Por ejemplo, la plantilla de solicitud de extracción denominada se aplicaría si una solicitud de extracción tiene feature.md como destino la rama o cualquier featurefeature/* rama.

Las plantillas de solicitud de extracción específicas de rama deben guardarse en la rama predeterminada del repositorio mediante la siguiente jerarquía de carpetas: pull_request_template/branches/ . Estas carpetas deben basarse en una de las siguientes carpetas del repositorio.

  • Una carpeta denominada .azuredevops que se encuentra en la carpeta raíz del repositorio
  • Una carpeta denominada .vsts que se encuentra en la carpeta raíz del repositorio
  • Una carpeta denominada docs que se encuentra en la carpeta raíz del repositorio
  • La carpeta raíz del repositorio

Por ejemplo, una plantilla de solicitud de extracción específica de rama que se debe aplicar a todas las solicitudes de extracción en la rama se denominaría o y se ubicaría en dev una de las siguientes dev.mddev.txt ubicaciones.

  • <repository root>/.azuredevops/pull_request_template/branches/
  • <repository root>/.vsts/pull_request_template/branches/
  • <repository root>/docs/pull_request_template/branches/
  • <repository root>/pull_request_template/branches/

Al igual que las plantillas de solicitud de extracción predeterminadas, se proporcionan varias ubicaciones para ofrecer flexibilidad en la ubicación en la que almacena plantillas de solicitud de extracción específicas de rama. Cuando se crea una solicitud de extracción, Azure Repos busca en las carpetas designadas en el orden especificado una plantilla de solicitud de extracción específica de rama y usa la primera que encuentra que coincide con el nombre de la rama. Si no se encuentra ninguna plantilla de solicitud de extracción específica de rama, Azure Repos buscar una plantilla de solicitud de extracción predeterminada como se describe en la sección plantillas de solicitud de extracción predeterminadas anterior.

Plantilla de solicitud de extracción específica de rama

Plantillas de solicitud de extracción adicionales

Además de las plantillas predeterminadas y específicas de solicitud de incorporación de recursos de rama, puede configurar plantillas de solicitud de incorporación de incorporación de recursos adicionales. Pueden ser archivos .md o .txt , ubicados en una de las siguientes carpetas de la rama predeterminada.

  • <repository root>/.azuredevops/pull_request_template/
  • <repository root>/.vsts/pull_request_template/
  • <repository root>/docs/pull_request_template/
  • <repository root>/pull_request_template/

Cuando se crea una solicitud de extracción, puede anexar cualquiera de las plantillas de solicitud de extracción disponibles eligiendolas en la lista desplegable Agregar una plantilla. Los nombres de la lista desplegable se basan en los nombres de archivo de las plantillas.

En el ejemplo siguiente se muestran tres plantillas.

  • dev.md- Se trata de la plantilla específica de rama que se aplicó de dev.md forma predeterminada a esta solicitud de extracción en la rama de desarrollo, como se indica en el mensaje predeterminado que aparece después del nombre de archivo.
  • additional.md - Se trata de una plantilla adicional.
  • pull_request_template.md - Normalmente se trata de la plantilla predeterminada, pero la plantilla específica de la rama la invalidó dev.md en esta solicitud de extracción. Aunque no se agregó de forma predeterminada, todavía se puede aplicar seleccionándose en la lista.

Plantilla de solicitud de extracción adicional

Seleccione el nombre de la plantilla adicional deseada para anexar su contenido a la descripción de la solicitud de extracción actual.

Plantilla de solicitud de extracción adicional anexada

Nota

Puede especificar una plantilla de solicitud de extracción para invalidar cualquier solicitud de extracción predeterminada o específica de rama coincidente anexando a ?template=name.md la cadena de consulta.