Me deparei essa semana com uma necessidade interessante de fazer uma configuração de múltiplas contas Git no meu computador. Para um novo cliente, resolvi começar a separar as contas Git do GitHub para cada novo desenvolvimento de criação de site. Até aí, tudo bem e sem novidades. A questão e o pequeno probleminha que surgiu foi quando, ao tentar versionar o projeto inicial na mesma máquina, percebi que ele estava tentando enviar para o repositório criado no Bash com a configuração da minha conta Git padrão, onde ele não encontrava a configuração adicionada com o comando remote
do repositório criado no GitHub.
Foi então que percebi que precisaria utilizar repositórios de diferentes contas Git no mesmo computador. Depois de um tempinho pesquisando, cheguei a este guia prático, que compartilho agora com você.
Preparando o Ambiente para Versionamento
Antes de começarmos a configurar múltiplas contas Git, precisamos garantir que você tenha o Git Bash instalado no seu sistema Windows. Aqui está um passo a passo simples para verificar e instalar, se necessário.
Instalando o Git Bash
- Acesse o site oficial do Git.
- Baixe a versão mais recente do Git Bash para Windows.
- Siga as instruções de instalação padrão.
Verificando a Instalação do Git
Após a instalação, abra o Git Bash e digite o seguinte comando para verificar se o Git está instalado corretamente:
git --version
Se você ver a versão do Git como resposta, está tudo pronto para a próxima etapa.
Configurando Contas no Git
Para usar múltiplas contas Git no mesmo sistema, precisamos criar e configurar chaves SSH (protocolo Secure Shell) distintas para cada conta no computador e também no GitHub.
Criando Chaves SSH para Cada Conta
Abra o Git Bash e crie uma nova chave SSH para a primeira conta:
ssh-keygen -t rsa -C "[email protected]"
O parâmetro -t
especifica o tipo de chave gerada (rsa) e o -C
indica um comentário para essa chave no arquivo que será gerado.
Depois de rodar o comando acima, você precisará salvar suas chaves no computador confirmando o caminho apresentado e inserindo um novo nome para o arquivo. Esse nome deve ser único e não pode ser igual a outros arquivos de chave SSH criados:
Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/your_username/.ssh/id_rsa): <id_rsa_nome_seu_usuario_git_novo> Enter passphrase (empty for no passphrase): Enter same passphrase again: <sua_senha>
É recomendável usar uma senha para adicionar uma camada extra de segurança.
Depois de concluído, caso não tenha sido criado em /c/Users/your_username/.ssh
, verifique no diretório atual no Bash e copie os dois arquivos criados (<id_rsa_seu_nome_usuario_git_novo>
e <id_rsa_seu_nome_usuario_git_novo.pub>
) para sua pasta /c/Users/your_username/.ssh
.
Adicionando as Chaves SSH no GitHub
Adicione as chaves SSH ao GitHub para que possam ser usadas pelo Git:
- Acesse sua conta no GitHub.
- Vá para Settings > SSH and GPG keys.
- Copie o conteúdo da chave pública (
<id_rsa_seu_nome_usuario_git_novo.pub>
). - No GitHub, na tela SSH and GPG keys, adicione uma nova chave SSH e cole a chave pública copiada.
Adicionando sshCommand no Git Config
Agora você precisa acessar o seu git config executando o comando:
git config -e
Deverá aparecer no Bash algo parecido com isso:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
Navegue com o cursor até o último parâmetro dentro de [core]
e insira:
sshCommand = ssh -i C:/Users/<seu_user>/.ssh/<id_rsa_seu_nome_usuario_git_novo>
Definindo o Usuário do Git por Repositório
Se você quiser definir um usuário específico para um repositório, navegue até o diretório do repositório e use:
git config user.name "Seu Nome"
git config user.email "[email protected]"
E pronto! Agora você pode usar múltiplas contas Git no Windows com Git Bash sem problemas. Este guia simplifica o processo e permite que você gerencie projetos de diferentes contas sem complicações. Teste e veja como essa configuração pode facilitar seu fluxo de trabalho.
Se tiver dúvidas ou sugestões, deixe seu comentário abaixo. Bora codar!