# Fusion d'une pull request

Fusionnez les pull requests dans la branche upstream, choisissez des méthodes de fusion et respectez les exigences du dépôt, comme les revues ou les vérifications d’état.

## À propos des fusions de demande de tirage

Fusionnez une pull request lorsque les modifications proposées sont prêtes et que toutes les exigences du dépôt sont satisfaites. Vous ne pouvez pas fusionner une pull request en brouillon.

Les règles du dépôt ou la protection des branches peuvent exiger des revues, des vérifications d’état ou une branche à jour avant la fusion. Consultez « [À propos des branches protégées](/fr/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches) ».

En guise d’alternative aux règles de protection de branche, vous pouvez créer des ensembles de règles. Les ensembles de règles présentent quelques avantages par rapport aux règles de protection des branches, telles que les états, et une meilleure détectabilité sans nécessiter d’accès administrateur. Vous pouvez également appliquer plusieurs ensembles de règles en même temps. Pour plus d’informations, consultez « [À propos des ensembles de règles](/fr/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets) ».

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 pull request](/fr/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/automatically-merging-a-pull-request) ».

Si la branche de base nécessite une file d’attente de fusion, les options de fusion disponibles diffèrent de celles décrites ici. Consultez « [Fusion d'une pull request avec une file d'attente de fusion](/fr/pull-requests/how-tos/merge-and-close-pull-requests/merging-a-pull-request-with-a-merge-queue) ».

Si la pull request présente des conflits de fusion, ou si vous souhaitez d’abord tester les modifications, [récupérez la pull request en local](/fr/pull-requests/how-tos/review-pull-requests/checking-out-pull-requests-locally).

Le dépôt peut supprimer automatiquement la branche source après la fusion. Consultez « [Gestion de la suppression automatique des branches](/fr/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-the-automatic-deletion-of-branches) ».

> \[!NOTE]
> 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.

Les pull requests utilisent [l’option `--no-ff`](https://git-scm.com/docs/git-merge#_fast_forward_merge), à l’exception des pull requests écrasées ou ayant fait l’objet d’un rebasage, qui utilisent la fusion en 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 la demande de tirage est fusionnée. Pour plus d’informations, consultez « [Relier une demande de tirage à un problème](/fr/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue) ».

Si vous ne souhaitez pas fusionner les modifications, vous pouvez [fermer la pull request](/fr/pull-requests/how-tos/merge-and-close-pull-requests/closing-a-pull-request).

## Fusion d'une pull request

<div class="ghd-tool webui">

1. Sous le nom de votre référentiel, cliquez sur **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-pull-request" aria-label="git-pull-request" role="img"><path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25Zm5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354ZM3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Zm8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Z"></path></svg> 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é.](/assets/images/help/repository/repo-tabs-pull-requests-global-nav-update.png)

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

3. Faites défiler jusqu’en bas de la pull request. Selon les options de fusion activées pour votre référentiel, choisissez une méthode de fusion :

   * [Fusionnez tous les commits dans la branche de base](/fr/pull-requests/reference/pull-request-merges) en cliquant sur **Fusionner la pull request**. Si l’option n’est pas affichée, cliquez sur le menu déroulant fusion et sélectionnez **Créer une validation de fusion**.

     ![Capture d’écran des options de fusion d'une pull request. La flèche pour développer la liste déroulante est indiquée en orange foncé.](/assets/images/help/pull_requests/merge-pull-request-options.png)

   * [Regroupez les commits en un seul commit](/fr/pull-requests/reference/pull-request-merges#squash-and-merge-your-commits) en cliquant sur le menu déroulant de fusion, en sélectionnant **Regrouper et fusionner**, puis en cliquant sur **Regrouper et fusionner**.

   * [Rebasez les validations individuellement sur la branche de base](/fr/pull-requests/reference/pull-request-merges#rebase-and-merge-your-commits) en cliquant sur le menu déroulant fusion, en sélectionnant **Rebaser et fusionner**, puis en cliquant sur **Rebase et fusionner**.

   > \[!NOTE]
   > Rebase et fusion mettront toujours à jour les informations du committer et créeront de nouveaux SHAs de commit. Voir [À propos des fusions de pull requests](/fr/pull-requests/reference/pull-request-merges#rebase-and-merge-your-commits).

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 [Fusion des pull requests](/fr/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#merge-message-for-a-squash-merge).

5. Si vous avez plusieurs adresses e-mail associées à votre compte GitHub, cliquez sur le menu déroulant de l’adresse 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, le mode sans réponse sera utilisé par défaut pour l’adresse e-mail de l’auteur de commit. Pour plus d’informations sur la forme exacte que l’adresse e-mail sans réponse peut prendre, consultez [Définition de votre adresse e-mail de commit](/fr/account-and-profile/how-tos/email-preferences/setting-your-commit-email-address).

![Capture d’écran d’une pull request GitHub affichant un menu déroulant avec des options permettant de choisir l’adresse e-mail de l’auteur du commit.
octocat@github.com est sélectionné.](/assets/images/help/repository/choose-commit-email-address.png)

> \[!NOTE]
> Le sélecteur d’adresse e-mail n’est pas disponible pour les fusions avec rebasage, qui ne créent pas de commit de fusion. Pour les fusions par squash, le sélecteur d’e-mail s’affiche uniquement si vous êtes l’auteur de la pull request et que plusieurs adresses e-mail sont associées à votre compte.

1. Cliquez sur **Confirmer la fusion**, **Confirmer l’écrasement et la fusion**, ou **Confirmer la rebase et la fusion**.
2. Si vous le souhaitez, [supprimez la branche](/fr/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/deleting-and-restoring-branches-in-a-pull-request). Cela permet de garder la liste des branches de votre référentiel bien ordonnée.

</div>

<div class="ghd-tool cli">

> \[!NOTE]
> Pour plus d’informations sur GitHub CLI, consultez [À propos de l’interface CLI GitHub](/fr/github-cli/github-cli/about-github-cli).

Pour fusionner une demande de tirage, utilisez la sous-commande `gh pr merge`. Remplacez `pull-request` par le numéro, l’URL ou la branche principale du pull request.

```shell
gh pr merge PULL-REQUEST
```

Suivez les invites interactives pour terminer la fusion. Consultez « [Fusion des pull requests](/fr/pull-requests/reference/pull-request-merges) ».

Vous pouvez également utiliser des indicateurs pour ignorer les invites interactives. Par exemple, cette commande regroupe les commits en un seul commit avec le message de commit « my squash commit », fusionne le commit résultant dans la branche de base, puis supprime la branche locale et la branche distante.

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

</div>

## Lectures complémentaires

* [Réinitialisation d’une pull request](/fr/pull-requests/how-tos/merge-and-close-pull-requests/reverting-a-pull-request)
* [Synchronisation de votre branche dans GitHub Desktop](/fr/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/syncing-your-branch-in-github-desktop) à l’aide de GitHub Desktop
* [Fusion des pull requests](/fr/pull-requests/reference/pull-request-merges)
* [Fusionner et fermer des pull requests](/fr/pull-requests/how-tos/merge-and-close-pull-requests)