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
Colando chave de autenticação SSH

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 quando estamos falando sobre git.