Skip to main content
Nous publions des mises à jour fréquentes de notre documentation, et la traduction de cette page peut encore être en cours. Pour obtenir les informations les plus actuelles, consultez la documentation anglaise.

Fusion d’une demande de tirage

Fusionnez une demande de tirage (pull request) dans la branche en amont quand le travail est terminé. Toute personne disposant d’un accès en poussée (push) au dépôt peut effectuer la fusion.

À propos des fusions de demande de tirage

Dans une demande de tirage, vous proposez que les modifications que vous avez apportées sur une branche de tête doivent être fusionnées dans une branche de base. Par défaut, toute demande de tirage peut être fusionnée à tout moment, sauf si la branche principale est en conflit avec la branche de base. Mais il peut y avoir des restrictions sur le moment où vous pouvez fusionner une demande de tirage dans une branche spécifique. Par exemple, vous pouvez uniquement fusionner une demande de tirage dans la branche par défaut si les vérifications d’état requises aboutissent. Pour plus d’informations, consultez « À propos des branches protégées ».

Vous pouvez configurer une demande de tirage pour fusionner automatiquement lorsque toutes les conditions de fusion sont remplies. Pour plus d’informations, consultez « Fusion automatique d’une demande de tirage ».

Si la demande de tirage présente des conflits de fusion ou si vous souhaitez tester les modifications avant de fusionner, vous pouvez extraire la demande de tirage localement et la fusionner à l’aide de la ligne de commande.

Vous ne pouvez pas fusionner un brouillon de demande de tirage. Pour plus d’informations sur les brouillons de demandes de tirage, consultez « À propos des demandes de tirage ».

Le référentiel peut être configuré afin que la branche principale d’une demande de tirage soit automatiquement supprimée lorsque vous fusionnez une demande de tirage. Pour plus d’informations, consultez « Gestion de la suppression automatique des branches ».

Remarque : Si vous supprimez une branche de tête (head) une fois que sa demande de tirage a été fusionnée, GitHub recherche les demandes de tirage ouvertes du même dépôt qui spécifient la branche supprimée comme branche de base. GitHub met automatiquement à jour ces demandes de tirage, en remplaçant leur branche de base par la branche de base de la demande de tirage fusionnée. Pour plus d’informations, consultez « À propos des branches ».

Les requêtes de tirage sont fusionnées à l’aide de l’option --no-ff, à l’exception des requêtes de tirage avec validations écrasées ou rebasées, qui sont fusionnées à l’aide de l’option fast-forward (avance rapide).

Vous pouvez lier une demande de tirage à un problème pour montrer qu’un correctif est en cours et fermer automatiquement le problème lorsque quelqu’un fusionne la demande de tirage. Pour plus d’informations, consultez « Liaison d’une demande de tirage à un problème ».

Si vous décidez de ne pas fusionner les modifications apportées à une branche de rubrique dans la branche en amont, vous pouvez fermer la demande de tirage sans fusionner.

Fusion d’une demande de tirage

  1. Sous le nom de votre dépôt, cliquez sur Demandes de tirage. Sélection de l’onglet Problèmes et demandes de tirages

  2. Dans la liste « Demandes de tirage », cliquez sur la demande de tirage que vous souhaitez fusionner.

  3. Selon les options de fusion activées pour votre référentiel, vous pouvez :

    Remarque : la rebase et la fusion mettent toujours à jour les informations du validateur et créent de nouvelles autorités de certification de validation. Pour plus d’informations, consultez « À propos des fusions de demandes de tirage ».

  4. Si vous y êtes invité, tapez un message de commit ou acceptez le message par défaut.

    Pour plus d’informations sur les messages de commit par défaut pour les fusions Squash, consultez « À propos des fusions de demande de tirage ». Champ de message de commit

  5. Si vous avez plusieurs adresses e-mail associées à votre compte sur GitHub.com, cliquez sur le menu déroulant d’adresses e-mail et sélectionnez l’adresse e-mail à utiliser comme adresse e-mail de l’auteur Git. Seules les adresses e-mail vérifiées apparaissent dans ce menu déroulant. Si vous avez activé la confidentialité de l’adresse e-mail, <username>@users.noreply.github.com est l’adresse e-mail par défaut de l’auteur de commit. Pour plus d’informations, consultez « Définition de votre adresse e-mail de commit ». Choisir les adresses e-mail de commit

    Remarque : le sélecteur d’e-mail n’est pas disponible pour les fusions avec rebase, qui ne créent pas de commit de fusion. Pour les fusions Squash, le sélecteur d’e-mail s’affiche uniquement si vous êtes l’auteur de la demande de tirage et que vous avez plusieurs adresses e-mail associées à votre compte.

  6. Cliquez sur Confirmer la fusion, Confirmer l’écrasement et la fusion, ou Confirmer la rebase et la fusion.

  7. Si vous le souhaitez, supprimez la branche. Cela permet de garder la liste des branches de votre référentiel bien ordonnée.

Pour en savoir plus sur GitHub CLI, consultez « À propos de GitHub CLI ».

Pour fusionner une demande de tirage, utilisez la sous-commande gh pr merge. Remplacez pull-request par le nombre, l’URL ou la branche de tête de la demande de tirage.

gh pr merge PULL-REQUEST

Suivez les invites interactives pour terminer la fusion. Pour plus d’informations sur les méthodes de fusion que vous pouvez choisir, consultez « À propos des fusions de demandes de tirage ».

Vous pouvez également utiliser des indicateurs pour ignorer les invites interactives. Par exemple, cette commande va écraser les validations en une seule validation avec le message de validation « my squash commit », fusionner la validation écrasée dans la branche de base, puis supprimer la branche locale et distante.

gh pr merge 523 --squash --body "my squash commit" --delete-branch

Pour aller plus loin