Uma vez alguém me disse que eu deveria assinar meus commits e tags Git utilizando algum mecanismo de criptografia. Em um primeiro momento não compreendi muito bem a necessidade disso. Não entendia muito bem as razões práticas de fazê-lo.

Algum tempo depois acabei de deparando com o excelente artigo de Mike Gerwitz entitulado Git Horror History: Repository Integrity With Signed Commits. Após lê-lo me dei conta das implicações práticas de assinar meu trabalho.

Para entender a importância disso, uma das sessões do Git Book é especificamente sobre esse assunto.

Tudo bem! O que faço agora?

O primeiro passo é dizer ao Git que você quer assinar seu trabalho de agora em diante usando GPG através da configuração commit.gpgsign.

$ git config --global commit.gpgsign true

No meu último artigo, Compartilhando segredos de forma insegura. Vamos parar com isso?, expliquei brevemente como criar um par de chaves pública e privada GPG.

De posse da sua chave privada, você pode configurar o Git para usá-la para assinar seu trabalho através da configuração user.signingkey.

$ git config --global user.signingkey 3B46D2FA