Skip to main content

Assinar commits

Você pode assinar commits localmente usando GPG, SSH ou S/MIME.

Observação: o GitHub Desktop só dá suporte à assinatura de commit se o cliente do Git está configurado para assinar commits por padrão.

Dicas:

Para configurar seu cliente do Git para assinar commits por padrão em um repositório local, nas versões do Git 2.0.0 e superior, execute git config commit.gpgsign true. Para assinar todos os commits por padrão em qualquer repositório local no computador, execute git config --global commit.gpgsign true.

Para armazenar a frase secreta da chave GPG e não precisar inseri-la sempre que assinar um commit, recomendamos o uso das seguintes ferramentas:

  • Para usuários do Mac, o GPG Suite permite que você armazene a senha de chave GPG no Conjunto de Chaves do macOS.
  • Para usuários do Windows, o Gpg4win integra-se a outras ferramentas do Windows.

Você também pode configurar manualmente o gpg-agent para salvar sua frase secreta de chave GPG, mas isso não se integra ao Conjunto de Chaves do macOS como o ssh-agent e exige configuração adicional.

Se você tiver várias chaves ou estiver tentando assinar commits ou tags com uma chave que não corresponda à sua identidade de autor de commit, informe sua chave de assinatura ao Git.

  1. Ao fazer commit das alterações no branch local, adicione o sinalizador -S flag ao comando git commit:

    $ git commit -S -m "YOUR_COMMIT_MESSAGE"
    # Creates a signed commit
    
  2. Se você estiver usando a GPG, depois de criar o commit, forneça a frase secreta configurada quando gerou a chave GPG.

  3. Quando terminar de criar os commits localmente, faça o push para o repositório remoto no GitHub:

    $ git push
    # Pushes your local commits to the remote repository
    
  4. No GitHub, navegue até sua pull request.

  5. Na solicitação de pull, clique em Commits.

    Captura de tela do título e das guias de uma solicitação de pull. A guia "Commits" está contornada em laranja escuro.

  6. Para ver informações mais detalhadas sobre a assinatura verificada, clique em Verificada.

    Captura de tela de um commit na lista de commits de um repositório. A opção "Verificado" é realçada com um contorno laranja.

Leitura adicional