Skip to main content

Fusion d'une pull request avec une file d'attente de fusion

Utilisez les files d’attente de fusion dans GitHub pour simplifier la fusion des pull requests, garantir que les vérifications requises sont validées et gérer efficacement les opérations de la file d’attente.

Qui peut utiliser cette fonctionnalité ?

Les files d’attente de fusion de demandes de tirage (pull requests) sont disponibles dans n’importe quel dépôt public appartenant à une organisation ou dans les dépôts privés appartenant aux organisations utilisant GitHub Enterprise Cloud. Consultez « plans de GitHub ».

Tool navigation

À propos des files d’attente de fusion

Une file d’attente de fusion permet de fusionner des pull requests dans une branche protégée très sollicitée une fois les vérifications requises réussies. Consultez « Gestion d’une file d’attente de fusion ».

Ajout d'une pull request à une file d'attente de fusion

Remarque

Vous pouvez utiliser GitHub CLI pour ajouter une pull request à une file de fusion. Pour plus d’informations, cliquez sur l’onglet «GitHub CLI » en haut de cet article.

  1. Sur GitHub, accédez à la page principale du référentiel.

  2. Sous le nom de votre référentiel, cliquez sur Demandes de tirage.

    Capture d’écran de la page principale d’un dépôt. Dans la barre de navigation horizontale, un onglet intitulé « Demandes de tirage » est indiqué en orange foncé.

  3. Dans la liste « Pull Requests », cliquez sur la pull request que vous souhaitez ajouter à une file d’attente de fusion.

  4. Cliquez sur Fusionner quand vous êtes prêt pour ajouter le pull request à la file de fusion. Sinon, si vous êtes administrateur, vous pouvez :

    • Fusionner directement le pull request en cochant Fusionner sans attendre que les conditions soient remplies (contourner les protections de branche), si les paramètres de protection de branche l'autorisent, et suivre le processus standard.

    Capture d’écran des options de file d’attente de fusion d’un pull request.

    Remarque

    Vous pouvez cliquer sur Fusionner lorsque vous êtes prêt avant que toutes les conditions requises ne passent. GitHub ajoute la demande de fusion à la file d’attente lorsque les conditions requises sont remplies.

  5. Confirmez que vous voulez ajouter le pull request à la file d’attente de fusion en cliquant sur Confirmer la fusion lorsque vous êtes prêt.

Avec GitHub CLI, utilisez la commande gh pr merge pour ajouter une pull request à une file de fusion. Si vous ciblez une branche qui nécessite une file d’attente de fusion, cette commande ajoute automatiquement la pull request à la file d’attente de fusion si les vérifications nécessaires ont été validées avec succès. Si les vérifications requises n'ont pas été validées, cette commande active la fusion automatique pour le pull request. Consultez gh pr merge dans le manuel GitHub CLI.

Suppression d’une pull request dans une file d’attente de fusion

Pour supprimer une pull request d’une file d’attente de fusion, vous devez vous rendre sur la page du référentiel sur GitHub.com. Vous ne pouvez pas utiliser GitHub CLI pour retirer une pull request d’une file d’attente de fusion.

  1. Sur GitHub, accédez à la page principale du référentiel.

  2. Sous le nom de votre référentiel, cliquez sur Demandes de tirage.

    Capture d’écran de la page principale d’un dépôt. Dans la barre de navigation horizontale, un onglet intitulé « Demandes de tirage » est indiqué en orange foncé.

  3. Dans la liste « Pull Requests », cliquez sur la pull request que vous souhaitez supprimer de la file d’attente de fusion.

  4. Pour supprimer la demande de tirage de la file d’attente, cliquez sur Supprimer de la file d’attente.

    Capture d’écran du message de file d’attente de fusion en bas d’un pull request. Le bouton « Supprimer de la file d’attente » est indiqué en orange foncé.

Vous pouvez également accéder à la page de file d’attente de fusion de la branche de base, cliquer sur ... à côté de la demande de tirage à supprimer et sélectionner Supprimer de la file d’attente. Pour plus d’informations sur l’accès à la page de file d’attente de fusion pour la branche de base, consultez la section ci-dessous.

Consultation des files d’attente de fusion

Vous pouvez afficher la file d’attente de fusion pour une branche de base à différents endroits sur GitHub. Vous ne pouvez pas utiliser GitHub CLI pour afficher une file d’attente de fusion.

Vous pouvez afficher la file d’attente de fusion pour une branche de base à différents endroits sur GitHub.

  • Dans la page Branches du dépôt. Nous vous recommandons cette méthode si vous n’avez pas de pull request déjà en file d’attente ou n’en connaissez pas, et si vous souhaitez voir ce que contient cette file d’attente. Consultez « Visualisation des branches dans votre dépôt ».

    Capture d’écran de la page « Branches » d’un dépôt. Un lien, intitulé « 33 pull requests en attente de fusion », est indiqué en orange foncé.

  • Sur la page de la pull request, lorsqu’une file d’attente de fusion est nécessaire pour fusionner, faites défiler jusqu’en bas de la chronologie et cliquez sur le lien file d’attente de fusion.

    Capture d’écran du message de file d’attente de fusion en bas d’un pull request. Le lien « file d’attente de fusion » est indiqué en orange foncé.

  • La vue de la file d’attente de fusion affiche les pull requests actuellement dans la file d’attente, avec vos pull requests clairement signalées.

    Capture d'écran de la file d'attente de fusion pour un référentiel.

Comprendre pourquoi votre pull request a été supprimée de la file d’attente d’intégration

Une pull request peut être supprimée de la file d’attente de fusion si elle ne répond plus aux exigences de fusion ou si une vérification de la file d’attente échoue.

Il existe plusieurs raisons pour lesquelles une demande de tirage peut être supprimée d’une file d’attente de fusion :

  • le service de CI configuré signale des échecs de test pour un groupe de fusion
  • l’expiration du délai d’attente d’un résultat de CI réussie en fonction du paramètre de délai d’expiration configuré
  • l’utilisateur demande une suppression via l’API ou l’interface de file d’attente de fusion
  • échec de la protection de branche qui n’a pas pu être résolu automatiquement