git verify-commit
Vérifier la signature GPG des commits
La commande 'git verify-commit' vérifie la signature cryptographique des commits faits avec git commit -S. Elle affiche ce que rapporte GPG (ou SSH) : qui a signé et si la signature est valide. Elle sort en erreur pour les commits non signés ou mal signés, ce qui permet de protéger déploiements et fusions.
Synopsis
git verify-commit [-v | --verbose] [--raw] <commit>...Exemples
Vérifier le dernier commit
git verify-commit HEADAffiche l’état de la signature.
Voir les signatures dans le log
git log --show-signature -3La même vérification pour plusieurs commits.
Exemples de workflows
git config --global user.signingkey <key-id>Choisir votre clé
git commit -S -m "Release"Signer le commit
git verify-commit HEADLe vérifier
Dépannage
gpg: Can't check signature: No public key
Cause : Vous n’avez pas la clé publique du signataire
Importez-la : gpg --recv-keys <key-id>
Astuces et pièges
Bonnes pratiques
- ✓Signez les commits et tags de version ; vérifiez-les en CI.
Erreurs fréquentes
- ✗S’attendre à une signature sur des commits faits sans -S ni commit.gpgSign=true.
FAQ
Oui, depuis Git 2.34 : git config gpg.format ssh.