# Signature de commits

Vous pouvez signer les commits localement en utilisant GPG, SSH ou S/MIME.

> \[!NOTE]
> [GitHub Desktop](https://desktop.github.com/) prend uniquement en charge la signature de commit si votre client Git est configuré pour signer les commits par défaut.

> \[!TIP]
> Afin de configurer votre client Git pour signer des commits par défaut pour un dépôt local, dans Git versions 2.0.0 et supérieures, exécutez `git config commit.gpgsign true`. Pour signer tous les commits par défaut dans n’importe quel dépôt local sur votre ordinateur, exécutez `git config --global commit.gpgsign true`.
>
> Afin de stocker votre phrase secrète de clé GPG pour ne pas avoir à l’entrer chaque fois que vous signez un commit, nous vous recommandons d’utiliser les outils suivants :
>
> * Si vous êtes utilisateur Mac, [GPG Suite](https://gpgtools.org/) vous permet de stocker votre phrase secrète de clé GPG dans le trousseau macOS.
> * Pour les utilisateurs Windows, le [Gpg4win](https://www.gpg4win.org/) s’intègre à d’autres outils Windows.
>
> Vous pouvez également configurer manuellement [gpg-agent](http://linux.die.net/man/1/gpg-agent) pour enregistrer votre phrase secrète de clé GPG, mais il ne s’intègre pas au trousseau macOS comme ssh-agent et nécessite davantage de configuration.

Si vous avez plusieurs clés ou que vous tentez de signer des commits ou des étiquettes avec une clé qui ne correspond pas à votre identité de commiteur, vous devez [informer Git de l’utilisation de votre clé de signature](/fr/enterprise-server@3.22/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key).

1. Quand vous commitez des modifications dans votre branche locale, ajoutez l’indicateur -S à la commande git commit :

   ```shell
   $ git commit -S -m "YOUR_COMMIT_MESSAGE"
   # Creates a signed commit
   ```

2. Si vous utilisez GPG, après avoir créé votre commit, fournissez la phrase secrète que vous avez configurée quand vous avez [généré votre clé GPG](/fr/enterprise-server@3.22/authentication/managing-commit-signature-verification/generating-a-new-gpg-key).

3. Quand vous avez terminé de créer des commits localement, poussez-les vers votre dépôt distant sur GitHub.

   ```shell
   $ git push
   # Pushes your local commits to the remote repository
   ```

4. Sur GitHub, accédez à votre pull request.

5. Dans la demande de tirage, cliquez sur **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-commit" aria-label="git-commit" role="img"><path d="M11.93 8.5a4.002 4.002 0 0 1-7.86 0H.75a.75.75 0 0 1 0-1.5h3.32a4.002 4.002 0 0 1 7.86 0h3.32a.75.75 0 0 1 0 1.5Zm-1.43-.75a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0Z"></path></svg> Commits**.

   ![Capture d’écran du titre et des onglets d’une demande de tirage. L’onglet « Commits » est indiqué en orange foncé.](/assets/images/help/pull_requests/pull-request-tabs-commits.png)

6. Pour voir des informations plus détaillées sur la signature vérifiée, cliquez sur **Vérifié**.

   ![Capture d’écran d’un commit dans la liste de commits d’un dépôt. « Vérifié » est mis en évidence avec un encadré orange.](/assets/images/help/commits/verified-commit.png)

## Pour aller plus loin

* [Informer Git de l’utilisation de votre clé de signature](/fr/enterprise-server@3.22/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key)
* [Signature d’étiquettes](/fr/enterprise-server@3.22/authentication/managing-commit-signature-verification/signing-tags)