Je souhaite que chacun de mes commits soit signé avec ma clé GPG. Puisque j'utilise magit pour interfacer avec git, je me demandais si dire à magit de signer chaque commit était possible (ou une solution de contournement pour y parvenir était possible, au moins).
13
git commit -S[<keyid>], --gpg-sign[=<keyid>]
. Il y a au moins une raison pour signer chaque commit: pour avoir des preuves plus solides que le commit vient de la personne que vous pensez avoir fait. Les balises de signature vous permettent uniquement de détecter les modifications de l'historique.Réponses:
Dans Magit, les commits sont créés à l'aide du popup de validation ( c). Ce popup serait donc un bon endroit pour commencer à chercher un support gpg. Si vous faites cela, vous trouverez ceci:
Alors tapez = Set sélectionnez une clé. Pour éviter d'avoir à le faire à chaque fois que vous créez un commit, vous pouvez enregistrer la valeur de cet argument (et de tous les autres arguments actuellement définis) à l'aide deC-x C-s .
Vous devrez peut-être toujours taper la phrase secrète à chaque fois. Pour éviter cela, vous devez démarrer un gpg-agent et vous assurer qu'Emacs le sait, par exemple en utilisant le
keychain
script shell et lekeychain-environment
paquet Emacs.Voir et définir également l'
--show-signature
argument dans la fenêtre contextuelle de journalisation.la source
transient
?Essayez ceci dans votre
$HOME/.gitconfig
ou votre.git/config
Ensuite, engagez-vous comme d'habitude.
la source
=S
option de magit définit la clé$HOME/.gitconfig
, donc la même chose pour tous vos référentiels.