Git Pie: A Arte Ancestral do Versionamento 🥧 Help

Assinatura de Commits e Tags

Configuração GPG

Setup Inicial

# Gerar chave GPG gpg --full-generate-key # Listar chaves gpg --list-secret-keys --keyid-format LONG # Configurar Git git config --global user.signingkey [KEY_ID] git config --global commit.gpgsign true

Assinando Commits

Processo de Assinatura

GPGGitDeveloperGPGGitDevelopergit commitSolicita assinaturaPede senhaFornece senhaAssina commitCommit concluído

Comandos Básicos

# Commit assinado git commit -S -m "commit message" # Verificar assinaturas git verify-commit HEAD git verify-tag v1.0.0 # Listar commits assinados git log --show-signature

Verificação

Status de Assinatura

Verificar

Sim

Não

Chave confiável

Chave desconhecida

Commit

Assinado?

Válido

Não assinado

Verificado

Não verificado

Boas Práticas

Recomendações

+------------------------+ | BOAS PRÁTICAS | | | | • Backup das chaves | | • Rotação periódica | | • Senha forte | | • Chave dedicada | | • Expiração definida | +------------------------+

Troubleshooting

Problemas Comuns

ProblemasAssinatura falhaVerificação falhaGPG não encontradoChave erradaSenha incorretaChave não confiávelAssinatura inválidaConfiguração errada

Soluções

# Testar GPG echo "test" | gpg --clearsign # Reconfigurar Git GPG git config --global --unset user.signingkey git config --global user.signingkey [NEW_KEY_ID] # Exportar chave pública gpg --armor --export [KEY_ID]

Integração CI/CD

Verificação Automatizada

name: Verify Signatures on: [push, pull_request] jobs: verify: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Verify commits run: | git verify-commit HEAD

Próximos Passos

Tópicos Relacionados

  • Gerenciamento de chaves GPG

  • Políticas de assinatura

  • Integração com plataformas Git

  • Automação de verificação

22 abril 2025