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.

Tip

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