Si vous utilisez une clé GPG qui correspond à votre identité de commiteur et à votre adresse e-mail vérifiée associées à votre compte sur votre instance Enterprise Server, vous pouvez commencer à signer des commits et des étiquettes.
Remarque
Si vous n’avez pas de clé GPG qui correspond à votre identité de commiteur, vous devez associer un e-mail à une clé existante. Pour plus d’informations, consultez « Association d’un e-mail à votre clé GPG ».
Si vous avez plusieurs clés GPG, vous devez indiquer à Git laquelle utiliser.
Ouvrez TerminalTerminalGit Bash.
Si vous avez précédemment configuré Git pour utiliser un autre format de clé lors de la signature avec
--gpg-sign
, annulez cette configuration afin que le format par défautopenpgp
soit utilisé.git config --global --unset gpg.format
Utilisez la commande
gpg --list-secret-keys --keyid-format=long
pour répertorier la forme longue des clés GPG pour lesquelles vous disposez à la fois d’une clé publique et d’une clé privée. Une clé privée est requise pour la signature des validations ou des étiquettes.Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
Remarque
Certaines installations GPG sous Linux peuvent vous demander d'utiliser
gpg2 --list-keys --keyid-format LONG
pour afficher une liste de vos clés existantes à la place. Dans ce cas, vous devez également configurer Git pour qu’il utilisegpg2
en exécutantgit config --global gpg.program gpg2
.Dans la liste des clés GPG, copiez la forme longue de l’ID de clé GPG à utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
Pour définir votre clé de signature primaire GPG dans Git, collez le texte ci-dessous en spécifiant l’ID de clé primaire GPG que vous souhaitez utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:git config --global user.signingkey 3AA5C34371567BD2
Vous pouvez également utiliser une sous-clé. Dans cet exemple, l’ID de sous-clé GPG est
4BB6D45482678BE3
:git config --global user.signingkey 4BB6D45482678BE3
Si vous utilisez plusieurs clés et sous-clés, vous devez ajouter un point d’exclamation
!
à la clé pour indiquer à git qu’il s’agit de votre clé préférée. Parfois, vous devrez peut-être remplacer la marque d’exclamation par une barre oblique inverse :\!
.En option, pour configurer Git afin qu'il signe tous les commits et les tags par défaut, entrez la commande suivante :
git config --global commit.gpgsign true git config --global tag.gpgSign true
Pour plus d’informations, consultez « Signature de commits ».
Si vous n’utilisez pas la suite GPG, exécutez la commande suivante dans l’interpréteur de commandes
zsh
pour ajouter la clé GPG à votre fichier.zshrc
, s’il existe, ou votre fichier.zprofile
:$ if [ -r ~/.zshrc ]; then echo -e '\nexport GPG_TTY=$(tty)' >> ~/.zshrc; \ else echo -e '\nexport GPG_TTY=$(tty)' >> ~/.zprofile; fi
Vous utilisez l’interpréteur de commandes
bash
, vous pouvez également exécuter cette commande :$ if [ -r ~/.bash_profile ]; then echo -e '\nexport GPG_TTY=$(tty)' >> ~/.bash_profile; \ else echo -e '\nexport GPG_TTY=$(tty)' >> ~/.profile; fi
Si vous le souhaitez, pour être invité à entrer un code PIN ou une phrase secrète quand c’est nécessaire, installez
pinentry-mac
. Par exemple, avec Homebrew :brew install pinentry-mac echo "pinentry-program $(which pinentry-mac)" >> ~/.gnupg/gpg-agent.conf killall gpg-agent
Si vous utilisez une clé GPG qui correspond à votre identité de commiteur et à votre adresse e-mail vérifiée associées à votre compte sur votre instance Enterprise Server, vous pouvez commencer à signer des commits et des étiquettes.
Remarque
Si vous n’avez pas de clé GPG qui correspond à votre identité de commiteur, vous devez associer un e-mail à une clé existante. Pour plus d’informations, consultez « Association d’un e-mail à votre clé GPG ».
Si vous avez plusieurs clés GPG, vous devez indiquer à Git laquelle utiliser.
Ouvrez TerminalTerminalGit Bash.
Si vous avez précédemment configuré Git pour utiliser un autre format de clé lors de la signature avec
--gpg-sign
, annulez cette configuration afin que le format par défautopenpgp
soit utilisé.git config --global --unset gpg.format
Utilisez la commande
gpg --list-secret-keys --keyid-format=long
pour répertorier la forme longue des clés GPG pour lesquelles vous disposez à la fois d’une clé publique et d’une clé privée. Une clé privée est requise pour la signature des validations ou des étiquettes.Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
Remarque
Certaines installations GPG sous Linux peuvent vous demander d'utiliser
gpg2 --list-keys --keyid-format LONG
pour afficher une liste de vos clés existantes à la place. Dans ce cas, vous devez également configurer Git pour qu’il utilisegpg2
en exécutantgit config --global gpg.program gpg2
.Dans la liste des clés GPG, copiez la forme longue de l’ID de clé GPG à utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
Pour définir votre clé de signature primaire GPG dans Git, collez le texte ci-dessous en spécifiant l’ID de clé primaire GPG que vous souhaitez utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:git config --global user.signingkey 3AA5C34371567BD2
Vous pouvez également utiliser une sous-clé. Dans cet exemple, l’ID de sous-clé GPG est
4BB6D45482678BE3
:git config --global user.signingkey 4BB6D45482678BE3
Si vous utilisez plusieurs clés et sous-clés, vous devez ajouter un point d’exclamation
!
à la clé pour indiquer à git qu’il s’agit de votre clé préférée. Parfois, vous devrez peut-être remplacer la marque d’exclamation par une barre oblique inverse :\!
.En option, pour configurer Git afin qu'il signe tous les commits et les tags par défaut, entrez la commande suivante :
git config --global commit.gpgsign true git config --global tag.gpgSign true
Pour plus d’informations, consultez « Signature de commits ».
Si vous utilisez une clé GPG qui correspond à votre identité de commiteur et à votre adresse e-mail vérifiée associées à votre compte sur votre instance Enterprise Server, vous pouvez commencer à signer des commits et des étiquettes.
Remarque
Si vous n’avez pas de clé GPG qui correspond à votre identité de commiteur, vous devez associer un e-mail à une clé existante. Pour plus d’informations, consultez « Association d’un e-mail à votre clé GPG ».
Si vous avez plusieurs clés GPG, vous devez indiquer à Git laquelle utiliser.
Ouvrez TerminalTerminalGit Bash.
Si vous avez précédemment configuré Git pour utiliser un autre format de clé lors de la signature avec
--gpg-sign
, annulez cette configuration afin que le format par défautopenpgp
soit utilisé.git config --global --unset gpg.format
Utilisez la commande
gpg --list-secret-keys --keyid-format=long
pour répertorier la forme longue des clés GPG pour lesquelles vous disposez à la fois d’une clé publique et d’une clé privée. Une clé privée est requise pour la signature des validations ou des étiquettes.Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
Remarque
Certaines installations GPG sous Linux peuvent vous demander d'utiliser
gpg2 --list-keys --keyid-format LONG
pour afficher une liste de vos clés existantes à la place. Dans ce cas, vous devez également configurer Git pour qu’il utilisegpg2
en exécutantgit config --global gpg.program gpg2
.Dans la liste des clés GPG, copiez la forme longue de l’ID de clé GPG à utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <[email protected]> ssb 4096R/4BB6D45482678BE3 2016-03-10
Pour définir votre clé de signature primaire GPG dans Git, collez le texte ci-dessous en spécifiant l’ID de clé primaire GPG que vous souhaitez utiliser. Dans cet exemple, l’ID de clé GPG est
3AA5C34371567BD2
:git config --global user.signingkey 3AA5C34371567BD2
Vous pouvez également utiliser une sous-clé. Dans cet exemple, l’ID de sous-clé GPG est
4BB6D45482678BE3
:git config --global user.signingkey 4BB6D45482678BE3
Si vous utilisez plusieurs clés et sous-clés, vous devez ajouter un point d’exclamation
!
à la clé pour indiquer à git qu’il s’agit de votre clé préférée. Parfois, vous devrez peut-être remplacer la marque d’exclamation par une barre oblique inverse :\!
.En option, pour configurer Git afin qu'il signe tous les commits et les tags par défaut, entrez la commande suivante :
git config --global commit.gpgsign true git config --global tag.gpgSign true
Pour plus d’informations, consultez « Signature de commits ».
Pour ajouter votre clé GPG à votre fichier de démarrage
.bashrc
, exécutez la commande suivante :[ -f ~/.bashrc ] && echo -e '\nexport GPG_TTY=$(tty)' >> ~/.bashrc
Vous pouvez utiliser une clé SSH existante pour signer des commits et des étiquettes, ou en générer une nouvelle spécifiquement pour la signature. Pour plus d’informations, consultez « Génération d’une nouvelle clé SSH et ajout de celle-ci à ssh-agent ».
Remarque
La vérification de signature SSH est disponible dans Git 2.34 ou version ultérieure. Pour mettre à jour votre version de Git, consultez le site web Git.
Ouvrez TerminalTerminalGit Bash.
Configurez Git afin d’utiliser SSH pour signer les commits et étiquettes :
git config --global gpg.format ssh
Pour définir votre clé de signature SSH dans Git, collez le texte ci-dessous en remplaçant /PATH/TO/.SSH/KEY.PUB par le chemin vers la clé publique que vous souhaitez utiliser.
git config --global user.signingkey /PATH/TO/.SSH/KEY.PUB
Vous pouvez utiliser smimesign pour signer des commits et des étiquettes à l’aide de S/MIME.
Remarque
La vérification de signature S/MIME est disponible dans Git 2.19 ou version ultérieure. Pour mettre à jour votre version de Git, consultez le site web Git.
Installez smimesign.
Ouvrez TerminalTerminalGit Bash.
Configurez Git afin d’utiliser S/MIME pour signer des validations et des balises. Dans Git 2.19 ou version ultérieure, utilisez les commandes
git config gpg.x509.program
etgit config gpg.format
:Pour utiliser S/MIME pour signer pour tous les dépôts :
git config --global gpg.x509.program smimesign git config --global gpg.format x509
Pour utiliser S/MIME pour signer pour un seul dépôt :
cd PATH-TO-REPOSITORY git config --local gpg.x509.program smimesign git config --local gpg.format x509
Dans Git 2.18 ou version antérieure, utilisez la commande
git config gpg.program
:Pour utiliser S/MIME pour signer pour tous les dépôts :
git config --global gpg.program smimesign
Pour utiliser S/MIME pour signer pour un seul dépôt :
cd PATH-TO-REPOSITORY git config --local gpg.program smimesign
Si vous utilisez une clé X.509 correspondant à votre identité de valideur, vous pouvez commencer à signer des validations et des étiquettes.
Si vous n’utilisez pas de clé X.509 correspondant à votre identité de valideur, répertoriez les clés X.509 pour lesquelles vous disposez ’un certificat et d’une clé privée à l’aide de la commande
smimesign --list-keys
.smimesign --list-keys
Dans la liste des clés X.509, copiez l’ID de certificat de la clé X.509 que vous souhaitez utiliser. Dans cet exemple, l’ID de certificat est
0ff455a2708394633e4bb2f88002e3cd80cbd76f
:$ smimesign --list-keys ID: 0ff455a2708394633e4bb2f88002e3cd80cbd76f S/N: a2dfa7e8c9c4d1616f1009c988bb70f Algorithm: SHA256-RSA Validity: 2017-11-22 00:00:00 +0000 UTC - 2020-11-22 12:00:00 +0000 UTC Issuer: CN=DigiCert SHA2 Assured ID CA,OU=www.digicert.com,O=DigiCert Inc,C=US Subject: CN=Octocat,O=\, Inc.,L=San Francisco,ST=California,C=US Emails: [email protected]
Pour définir votre clé de signature X.509 dans Git, collez le texte ci-dessous, en remplaçant l’ID de certificat par celui que vous avez copié précédemment.
Pour utiliser votre clé X.509 pour signer pour tous les dépôts :
git config --global user.signingkey 0ff455a2708394633e4bb2f88002e3cd80cbd76f
Pour utiliser votre clé X.509 pour signer pour un seul dépôt :
cd PATH-TO-REPOSITORY git config --local user.signingkey 0ff455a2708394633e4bb2f88002e3cd80cbd76f
Vous pouvez utiliser smimesign pour signer des commits et des étiquettes à l’aide de S/MIME.
Remarque
La vérification de signature S/MIME est disponible dans Git 2.19 ou version ultérieure. Pour mettre à jour votre version de Git, consultez le site web Git.
Installez smimesign.
Ouvrez TerminalTerminalGit Bash.
Configurez Git afin d’utiliser S/MIME pour signer des validations et des balises. Dans Git 2.19 ou version ultérieure, utilisez les commandes
git config gpg.x509.program
etgit config gpg.format
:Pour utiliser S/MIME pour signer pour tous les dépôts :
git config --global gpg.x509.program smimesign git config --global gpg.format x509
Pour utiliser S/MIME pour signer pour un seul dépôt :
cd PATH-TO-REPOSITORY git config --local gpg.x509.program smimesign git config --local gpg.format x509
Dans Git 2.18 ou version antérieure, utilisez la commande
git config gpg.program
:Pour utiliser S/MIME pour signer pour tous les dépôts :
git config --global gpg.program smimesign
Pour utiliser S/MIME pour signer pour un seul dépôt :
cd PATH-TO-REPOSITORY git config --local gpg.program smimesign
Si vous utilisez une clé X.509 correspondant à votre identité de valideur, vous pouvez commencer à signer des validations et des étiquettes.
Si vous n’utilisez pas de clé X.509 correspondant à votre identité de valideur, répertoriez les clés X.509 pour lesquelles vous disposez ’un certificat et d’une clé privée à l’aide de la commande
smimesign --list-keys
.smimesign --list-keys
Dans la liste des clés X.509, copiez l’ID de certificat de la clé X.509 que vous souhaitez utiliser. Dans cet exemple, l’ID de certificat est
0ff455a2708394633e4bb2f88002e3cd80cbd76f
:$ smimesign --list-keys ID: 0ff455a2708394633e4bb2f88002e3cd80cbd76f S/N: a2dfa7e8c9c4d1616f1009c988bb70f Algorithm: SHA256-RSA Validity: 2017-11-22 00:00:00 +0000 UTC - 2020-11-22 12:00:00 +0000 UTC Issuer: CN=DigiCert SHA2 Assured ID CA,OU=www.digicert.com,O=DigiCert Inc,C=US Subject: CN=Octocat,O=\, Inc.,L=San Francisco,ST=California,C=US Emails: [email protected]
Pour définir votre clé de signature X.509 dans Git, collez le texte ci-dessous, en remplaçant l’ID de certificat par celui que vous avez copié précédemment.
Pour utiliser votre clé X.509 pour signer pour tous les dépôts :
git config --global user.signingkey 0ff455a2708394633e4bb2f88002e3cd80cbd76f
Pour utiliser votre clé X.509 pour signer pour un seul dépôt :
cd PATH-TO-REPOSITORY git config --local user.signingkey 0ff455a2708394633e4bb2f88002e3cd80cbd76f