O Git tem a opção de assinar e verificar seus commits utilizando-se de chave GPG, para isso basta seguir os passos a seguir
Passo 1 - Gere uma nova chave GPG
1 - Digite o comando para gerar a chave GPG;
gpg --full-generate-key
2 - Selecione a opção: (1) RSA e RSA (padrão);
gpg (GnuPG) 2.2.4; Copyright (C) 2017 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Por favor selecione o tipo de chave desejado:
(1) RSA e RSA (padrão)
(2) DSA e Elgamal
(3) DSA (apenas assinatura)
(4) RSA (apenas assinar)
Sua opção?
3 - Digite o maior comprimento(4096), para sua nova chave GPG;
RSA chaves podem ter o seu comprimento entre 1024 e 4096 bits.
Que tamanho de chave você quer? (3072) 4096
4 - Decida qual o prazo de expiração para sua chave;
Por favor especifique por quanto tempo a chave deve ser válida.
0 = chave não expira
<n> = chave expira em n dias
<n>w = chave expira em n semanas
<n>m = chave expira em n meses
<n>y = chave expira em n anos
A chave é valida por? (0)
5 - Confirme o tempo de expiração da chave;
A chave não expira nunca
Está correto (s/N)?
6 - Digite seu nome completo;
GnuPG precisa construir uma ID de usuário para identificar sua chave.
Nome completo:
7 - Digite seu email;
Endereço de correio eletrônico:
8 - Crie um comentário para sua chave caso seja necessário;
Comentário:
9 - Confirme as informações que você acabou de preencher, basta digitar o para OK;
Você selecionou este identificador de usuário:
"Joao Ninguem <joao@ninguem.nada>"
Muda (N)ome, (C)omentário, (E)ndereço ou (O)k/(S)air?
10 - Digite uma senha segura para sua chave GPG e confirme a senha;
11 - Aguarde o processo de criação de sua chave finalizar;
Precisamos gerar muitos bytes aleatórios. É uma boa idéia realizar outra
atividade (digitar no teclado, mover o mouse, usar os discos) durante a
geração dos números primos; isso dá ao gerador de números aleatórios
uma chance melhor de conseguir entropia suficiente.
gpg: chave FD2B172CC4C9F3E4 marcada como plenamente confiável
gpg: revocation certificate stored as '/home/geekcom/.gnupg/openpgp-revocs.d/92518C10D23E004325112DB9FD2B172CC4C9F3E4.rev'
chaves pública e privada criadas e assinadas.
pub rsa4096 2020-04-28 [SC]
92518C10D23E004325112DB9FD2B172CC4C9F3E4
uid Joao Ninguem <joao@ninguem.nada>
sub rsa4096 2020-04-28 [E]
Neste momento sua chave GPG foi gerado com sucesso, agora é necessário adiciona-la ao GitHub.
Passo 2 - Adicionando uma chave GPG ao GitHub
1 - Use o seguinte comando para listar a chave GPG privada que você acabou de criar:
gpg --list-secret-keys --keyid-format LONG joao@ninguem.nada
Substitua joao@ninguem.nada
pelo e-mail que você usou para criar a chave.
2 - Copie o ID da chave GPG que começa com sec. No exemplo a seguir, é FD2B172CC4C9F3E4:
sec rsa4096/FD2B172CC4C9F3E4 2020-04-28 [SC]
92518C10D23E004325112DB9FD2B172CC4C9F3E4
uid [final] Joao Ninguem <joao@ninguem.nada>
ssb rsa4096/AB9EC40EA9DE16E3 2020-04-28 [E]
3 - Exporte a chave pública desse ID (substitua pelo seu ID da chave da etapa anterior):
gpg --armor --export FD2B172CC4C9F3E4
4 - Por fim, copie a chave pública e adicione-a nas configurações do seu perfil do GitHub em https://github.com/settings/keys
Passo 3 - Associando sua chave GPG ao Git
1 - Depois de criar sua chave GPG e adicioná-la à sua conta GitLab, é hora de informar ao Git qual chave usar.
gpg --list-secret-keys --keyid-format LONG joao@ninguem.nada
Substitua joao@ninguem.nada
pelo seu email.
2 - Copie o ID da chave GPG que começa com sec. No exemplo a seguir, é FD2B172CC4C9F3E4:
sec rsa4096/FD2B172CC4C9F3E4 2020-04-28 [SC]
92518C10D23E004325112DB9FD2B172CC4C9F3E4
uid [final] Joao Ninguem <joao@ninguem.nada>
ssb rsa4096/AB9EC40EA9DE16E3 2020-04-28 [E]
3 - Diga ao Git que deseja usar essa chave para assinar os seus commits:
git config --global user.signingkey FD2B172CC4C9F3E4
Substitua FD2B172CC4C9F3E4 pelo ID da sua chave GPG.
Passo 4 - Assinando commits com sua chave GPG
Depois de criar sua chave GPG e adicioná-la à sua conta, você pode começar a assinar seus commits:
1 - Continua como você costumava fazer, a única diferença é a adição da flag -S:
git commit -S -m "mensagem do meu commit"
2 - Digite a senha da sua chave GPG quando solicitada.
A partir de agora seus commits podem assinados com sua chave GPG sempre que desejar, no GitHub você poderá ver que seus commits estão assinados.
Top comments (0)