Partager via


Améliorer les descriptions des demandes de tirage à l’aide de modèles

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

L’écriture de descriptions de bonnes demandes de tirage est un excellent moyen d’aider les réviseurs à savoir ce qu’il faut attendre lors de l’examen du code. Ils sont également un excellent moyen de suivre les choses qui doivent être effectuées pour chaque modification, comme les tests, l’ajout de tests unitaires et la mise à jour de la documentation. Les modèles de demande de tirage (pull request) peuvent aider vos développeurs à créer d’excellentes descriptions de demandes de tirage qui répondent aux normes de votre organisation.

Cet article explique comment commencer à utiliser des modèles de demande de tirage( pull request).

Note

Les modèles de demande de tirage (pull request) peuvent fournir des conseils, mais sont des conseils uniquement. Utilisez des stratégies de branche pour appliquer les meilleures pratiques, telles que la nécessité de demandes de tirage (pull request) pour les branches clés telles que principale, nécessitant une génération réussie et l’application des réviseurs requis. Pour plus d’informations, consultez stratégies de branche.

Prerequisites

Catégorie Spécifications
Accès au projet Membre d’un projet.
Permissions - Afficher le code dans des projets privés : accès au moins de base .
- Clonez ou contribuez au code dans des projets privés : membre du groupe de sécurité Contributeurs ou autorisations correspondantes dans le projet.
- Définir des autorisations de branche ou de référentiel : gérer les autorisations pour la branche ou le référentiel.
- Modifier la branche par défaut : modifiez les autorisations des stratégies pour le référentiel.
- Importez un référentiel : membre du groupe de sécurité Administrateurs de projet ou de l’autorisation Créer au niveau du projet Git surAutoriser. Pour plus d’informations, consultez Définir des autorisations de dépôt Git.
Services Dépôts activés.
Outils Optional. Utilisez les commandes az repos : Azure DevOps CLI.

Note

Dans les projets publics, les utilisateurs disposant d’un accès aux parties prenantes ont un accès complet à Azure Repos, notamment l’affichage, le clonage et la contribution au code.

Catégorie Spécifications
Accès au projet Membre d’un projet.
Permissions - Afficher le code : Accès de base au moins.
- Cloner ou contribuer au code : membre du groupe de sécurité Contributeurs ou autorisations correspondantes dans le projet.
Services Dépôts activés.

Qu’est-ce qu’un modèle de demande de tirage (pull request) ?

Un modèle de demande de tirage est un fichier contenant du texte Markdown ajouté à votre description de demande de tirage lorsque la demande de tirage est créée.

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 vous permet de créer le type de modèle de demande de tirage suivant :

  • Modèle de demande de tirage par défaut appliqué automatiquement à toutes les nouvelles demandes de tirage dans le référentiel, sauf si elle est remplacée par un modèle de demande de tirage spécifique à une branche
  • Modèles de demande de tirage spécifiques à la branche qui sont automatiquement appliqués aux demandes d’extraction ciblant une branche spécifique
  • Modèles de demande de tirage supplémentaires qui peuvent éventuellement être ajoutés par le créateur de demande de tirage

Le type de modèle de demande de tirage est déterminé par son nom de fichier et son emplacement de dossier, comme indiqué dans les sections suivantes. Les noms de fichiers et les emplacements des dossiers ne respectent pas la casse, mais ils doivent se trouver dans la branche par défaut de votre référentiel.

Note

Tous les fichiers de modèle de demande de tirage doivent se trouver dans la branche par défaut (généralement principale) de votre dépôt. Seuls les fichiers de modèle de demande de tirage à partir de la branche par défaut sont utilisés.

Modèles de demande de tirage par défaut

Les modèles de demande de tirage par défaut sont automatiquement appliqués au champ de description lorsqu’une nouvelle demande de tirage est créée. Pour configurer votre référentiel avec un modèle de demande de tirage par défaut, créez un fichier nommé pull_request_template.md ou pull_request_template.txt enregistrez-le dans la branche par défaut de votre référentiel dans l’un des dossiers suivants.

  • Dossier nommé .azuredevops contenu dans le dossier racine du référentiel
  • Dossier nommé .vsts contenu dans le dossier racine du référentiel
  • Dossier nommé docs contenu dans le dossier racine du référentiel
  • Dossier racine du référentiel

Plusieurs emplacements sont fournis pour vous donner la possibilité de stocker vos modèles de demande de tirage. Lorsqu’une demande de tirage est créée, Azure Repos recherche les dossiers désignés dans l’ordre donné et utilise le premier modèle de demande de tirage par défaut qu’il trouve.

Lorsqu’une nouvelle demande de tirage est créée dans le référentiel, sauf si un modèle de demande de tirage spécifique à une branche s’applique, le contenu du modèle de demande de tirage par défaut est utilisé pour préremplir le champ de description dans la demande de tirage.

Modèle de demande de tirage par défaut

Vous pouvez modifier ou ajouter à cette description et ajouter des modèles de demande de tirage supplémentaires si vous le souhaitez en les sélectionnant dans la liste déroulante Ajouter un modèle .

Note

Lorsqu’un modèle de demande de tirage spécifique à une branche ou par défaut est automatiquement appliqué, il remplace les messages de validation standard qui sont généralement utilisés pour la description par défaut. Vous pouvez les ajouter en sélectionnant Ajouter des messages de validation.

Modèles de demande de tirage spécifiques à la branche

Les modèles de demande de tirage spécifiques à la branche peuvent être configurés pour les demandes de tirage qui ciblent une branche spécifique. Pour configurer votre référentiel avec un modèle de demande de tirage spécifique à une branche, créez un ou .txt un .md fichier nommé après votre branche. Le nom doit correspondre au premier niveau du nom de la branche, tel que main, , devrelease, ou feature. Chaque modèle de demande de tirage spécifique à une branche est appliqué chaque fois qu’une demande de tirage cible cette branche ou toutes les branches contenues dans celle-ci. Par exemple, le modèle de demande de tirage nommé feature.md serait appliqué si une demande de tirage ciblait la feature branche ou les feature/* branches.

Les modèles de demande de tirage spécifiques à la branche doivent être enregistrés dans la branche par défaut de votre référentiel à l’aide de la hiérarchie de dossiers suivante : pull_request_template/branches/. Ces dossiers doivent être basés dans l’un des dossiers suivants dans votre référentiel.

  • Dossier nommé .azuredevops contenu dans le dossier racine du référentiel
  • Dossier nommé .vsts contenu dans le dossier racine du référentiel
  • Dossier nommé docs contenu dans le dossier racine du référentiel
  • Dossier racine du référentiel

Par exemple, un modèle de demande de tirage spécifique à une branche qui doit s’appliquer à toutes les demandes de tirage dans la dev branche serait nommé dev.md ou dev.txt situé à l’un des emplacements suivants.

  • <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/

Tout comme les modèles de demande de tirage par défaut, plusieurs emplacements sont fournis pour vous offrir une flexibilité dans l’emplacement où vous stockez des modèles de demande de tirage spécifiques à la branche. Lorsqu’une demande de tirage est créée, Azure Repos recherche les dossiers désignés dans l’ordre donné pour un modèle de demande de tirage spécifique à une branche et utilise le premier qui correspond au nom de la branche. Si aucun modèle de demande de tirage spécifique à une branche n’est trouvé, Azure Repos recherche ensuite un modèle de demande de tirage par défaut, comme décrit dans la section précédente des modèles de demande de tirage par défaut .

Modèle de demande de tirage spécifique à la branche

Modèles de demande de tirage supplémentaires

Outre les modèles de demande de tirage par défaut et de branche spécifiques, vous pouvez configurer des modèles de demande de tirage supplémentaires. Il peut s’agir .md de fichiers ou .txt de fichiers situés dans l’un des dossiers suivants de votre branche par défaut.

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

Quand une demande de tirage est créée, vous pouvez ajouter l’un des modèles de demande de tirage disponibles en les choisissant dans la liste déroulante Ajouter un modèle . Les noms dans la liste déroulante sont basés sur les noms de fichiers des modèles.

Dans l’exemple suivant, trois modèles sont répertoriés.

  • dev.md - Il s’agit du modèle spécifique à la branche qui a été appliqué par défaut à cette demande de tirage dans la branche de développement, comme indiqué par le message par défaut répertorié après le nom de fichier.
  • additional.md - Il s’agit d’un modèle supplémentaire.
  • pull_request_template.md - Il s’agit normalement du modèle par défaut, mais il a été remplacé par le modèle spécifique à la dev.md branche dans cette demande de tirage. Même si elle n’a pas été ajoutée par défaut, elle peut toujours être appliquée en la sélectionnant dans la liste.

Modèle de demande de tirage supplémentaire

Sélectionnez le nom du modèle supplémentaire souhaité pour ajouter son contenu à la description de la demande de tirage actuelle.

Modèle de demande de tirage supplémentaire ajouté

Note

Vous pouvez spécifier un modèle de demande de tirage (pull request) pour remplacer toute demande de tirage par défaut ou spécifique à une branche correspondante en ajoutant ?template=name.md à la chaîne de requête.

Voir aussi