Para usar uma chave GPG como padrão para assinar commits do Git, siga estes passos:
-
Identifique o ID da sua chave GPG
Liste suas chaves GPG com:gpg --list-keys
Encontre o ID da chave que deseja usar (uma sequência hexadecimal).
-
Configure o Git para usar sua chave GPG globalmente
Defina sua chave de assinatura no Git com:git config --global user.signingkey <key-id>
Substitua “ pelo ID real da sua chave GPG. Se quiser especificar uma subchave ou marcar a chave como preferida, você pode adicionar um ponto de exclamação (
!
) ao final do ID da chave. -
Habilite a assinatura de commits por padrão
Para assinar automaticamente todos os commits, execute:git config --global commit.gpgsign true
Isso fará com que o Git assine cada commit sem precisar usar a flag
-S
manualmente. -
(Opcional) Habilite a assinatura de tags por padrão
git config --global tag.gpgSign true
-
Faça commits
Agora, os commits serão assinados automaticamente. Se preferir assinar commits manualmente, use:git commit -S -m "Sua mensagem de commit"
-
Cache da senha (passphrase)
Se sua chave GPG tiver uma senha, considere usar um agente GPG ou ferramentas específicas do sistema operacional (como GPG Suite no macOS ou Gpg4win no Windows) para armazenar a senha em cache e evitar solicitações repetidas. -
Verifique os commits assinados
Você pode verificar as assinaturas dos commits com:git log --show-signature
Essa configuração garante que o Git use sempre a chave GPG especificada para assinar commits por padrão.
Gerado via Perplexity AI. Fontes:
- https://docs.github.com/en/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key
- https://stackoverflow.com/questions/10161198/is-there-a-way-to-autosign-commits-in-git-with-a-gpg-key
- https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits
- https://docs.github.com/en/enterprise-cloud@latest/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key?platform=windows
- https://docs.gitlab.com/user/project/repository/signed_commits/gpg/
- https://docs.github.com/en/enterprise-server@3.16/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key
- https://git-scm.com/book/pt-br/v2/Git-Tools-Signing-Your-Work
- https://docs.github.com/en/enterprise-server@3.5/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key
- https://dev.to/codedir/using-existing-gpg-key-to-sign-git-commits-5181
- https://graphite.dev/guides/using-gpg-keys-git-commit-signatures