git | Autenticação
Passo a passo sobre como autenticar usuário git em uma máquina (local ou global)
Autenticação git
Como autenticar sua máquina com seu usuário git
Para usarmos o git na nossa máquina, o ideal é autenticarmos nossa máquina e configurarmos nosso usuário também. Preparamos um passo a passo para você autenticar sua máquina rapidinho. Pode parecer um pouco confuso, mas seguindo esse passo a passo verá que não tem erro! Vamos usar tanto o site github.com quanto nosso terminal.
Gerar chave SSH
Basta abrirmos nosso repositório e rodarmos o seguinte comando:
ssh-keygen -t rsa -b 4096 -C "seuemail@exemplo.com"
Lembre-se de trocar o email pelo seu email cadastrado no GitHub.
Na sequência é necessário nomear a chave (pode apertar Enter, pois o nome padrão é o sugerido - id_rsa).
Em seguida o terminal pedirá que defina uma senha e então a confirme. Pode deixar a senha vazia (aperte Enter e Enter novamente para confirmar a senha vazia).
Atenção: se for configurar uma senha, nada do que digitar aparecerá no terminal, então preste bastante atenção na senha que inserir.
Confirmando a criação da chave
Vamos rodar a seguinte função abaixo para confirmarmos que a chave foi gerada. O comando deve retornar um PIN
eval $(ssh-agent -s)
Se retornar um código com alguns números, é por que deu certo!
Atrelando a chave ao agente SSH
Para finalizarmos essa etapa, precisamos atrelar a chave SSH ao agente SSH. Basta digitar no terminal:
ssh-add ~/.ssh/id_rsa
Receberemos uma mensagem de sucesso, com nossa fingerprint e um desenho que representa a chave gerada.
Copiando a chave
Esse comando que iremos rodar agora dá a impressão que não acontece nada. Mas na realidade ele vai copiar nossa chave para a área de transferência.
Quando pressionar Control + V (paste/colar), irá colar a chave gerada. Siga o comando de acordo com seu OS (sistema operacional):
// Windows
clip < ~/.ssh/id_rsa.pub
// Mac
pbcopy < ~/.ssh/id_rsa.pub
// Linux
xclip -sel clip < ~/.ssh/id_rsa.pub
Observação: caso tenha alterado o nome da chave, precisa se certificar que a chave copiada é a mesma declarada no comando.
Colando a chave no github.com
Estamos quase lá! Agora precisamos colar a chave que copiamos com o comando anterio no nosso perfil do GitHub. Basta:
- • Logar no github com nosso usuário
- • Acessar a página Configuração > Chaves SSH e GPG
- • Clicar em 'Nova Chave SSH'
- • Definir um título para essa chave (importante: defina um nome que identifique a máquina a ser autenticada)
- • Colar a chave (copiada com o comando anterior no terminal)
- • Confirmar a criação da nova chave
Atenção: recomendamos que crie uma chave por máquina. Apesar de podermos usar uma mesma chave em diferentes máquinas, na hora de remover a autenticação (por exemplo do note antigo do trabalho), é mais fácil trabalharmos com uma por máquina, assim simplesmente excluímos a chave criada para aquele dispositivo específico.
Definindo nosso user na máquina
Agora que temos nossa máquina configurada, podemos configurar nosso usuário git nela!
Há duas formas de fazermos isso: a forma global (onde nosso usuário será considerado em todo e qualquer repositório dentro de nossa máquina) ou de forma local (dentro de um repositório específico - nesse caso precisamos rodar o comando dentro da pasta do repositório).
Forma Global (em toda a máquina)
// Definindo o nome de usuário globalmente:
git config --global user.name "Nome Completo"
// Definindo o email de usuário globalmente:
git config --global user.email "seuemail@exemplo.com"
Forma Local (apenas em um repositório específico)
// Acessando o repositório/pasta onde queremos configurar o user:
cd caminho/do/repositorio-na-nossa-maquina
// Definindo o nome de usuário local:
git config user.name "Nome Completo"
// Definindo o email de usuário local:
git config user.email "seuemail@exemplo.com"
Observação: os dados precisam ser os mesmos cadastrados no seu perfil do GitHub.
Prontinho! Você acaba de autenticar sua máquina e configurar seu usuário git nessa máquina! Não foi tão difícil, né?
Antes de começarmos a brincar com nossos repositório, vamos nos familiarizar com os termos mais usados quando estamos falando sobre git.