Qual é a sua dúvida?
Criando chaves SSH diferentes para várias contas Bitbucket na mesma máquina
Novo Processo:
1. Verificar chaves SSH existentes:
- Abra seu terminal.
- Execute o seguinte comando para ver se você tem alguma chave SSH existente:
Bash
ls ~/.ssh
- Procure por arquivos terminados em
.pub
(estas são suas chaves públicas).
2. Gerar uma nova chave SSH (se necessário):
- Se você não tiver uma chave SSH ou quiser criar uma nova:
Bash
ssh-keygen -t ed25519 -C "seu_email@example.com"
- Substitua
"seu_email@example.com"
pelo endereço de e-mail vinculado à sua conta do Bitbucket. - Quando solicitado, você pode aceitar o local padrão do arquivo (
~/.ssh/id_ed25519
) e optar por não definir uma senha.
- Substitua
3. Adicionar sua chave SSH ao Bitbucket:
-
Copiar sua chave SSH:
Bashcat ~/.ssh/id_ed25519.pub
- Isso exibirá sua chave pública. Copie toda a saída.
-
Ir para o Bitbucket:
- Faça login na sua conta do Bitbucket.
- Navegue até seu avatar no canto superior direito -> "Configurações pessoais" -> "Chaves SSH".
- Clique em "Adicionar chave".
-
Colar e salvar:
- Cole a chave pública copiada no campo "Chave".
- Dê um nome à sua chave (por exemplo, "Meu laptop").
- Clique em "Adicionar chave".
4. Testar sua conexão:
- Execute este comando para ver se agora você consegue se conectar ao repositório:
Bash
ssh -T git@bitbucket.org
- Você deverá ver uma mensagem como:
You can use git or hg to connect to Bitbucket. Shell access is disabled.
5. Clonar ou puxar:
- Agora você deve conseguir clonar o repositório:
Bash
git clone git@bitbucket.org:fabriciojf/nome-do-seu-repositorio.git
- Ou, se você já tiver uma cópia local, pode puxar as últimas alterações:
Bash
git pull
Método Antigo
Abra o terminal e digite o comando abaixo e informe os dados solicitados:
IMPORTANTE: Selecione um nome diferente de id_rsa
$ ssh-keygen -t rsa -b 4096 -C "SEU_EMAIL" Generating public/private rsa key pair. Enter file in which to save the key (/Users/emmap1/.ssh/id_rsa): NOME_PARA_A_CHAVE
Após a criação da chave digite o comando abaixo para ver as chaves publica e privada
$ ls -a ~/.ssh
Inicie o agente SSH
$ ssh-agent /bin/bash
Adicione a chave ao agente SSH
IMPORTANTE: Selecione um nome diferente de id_rsa
$ ssh-add ~/.ssh/NOME_DA_CHAVE Enter passphrase for /Users/emmap1/.ssh/id_rsa: NOME_DA_CHAVE Identity added: /Users/emmap1/.ssh/id_rsa (/Users/emmpa1/.ssh/id_rs
Veirifique se a chave foi adicionada com sucesso:
$ ssh-add -l 2048 7a:9c:b2:9c:8e:4e:f4:af:de:70:77:b9:52:fd:44:97 /Users/manthony/.ssh/id_rsa (RSA)
No Windows
Abra o Powershell e digite o comando abaixo
$ cd c:\Users\SEU_USER\.ssh
$ ssh-keygen -t rsa -C "seu_email_git@algo.com"
Pressione enter
Enter file in which to save the key (C:\Users\fabri/.ssh/id_rsa): DIGITE_O_NOME_DA_CHAVE
Ao digitar seu o NOME_DA_CHAVE na linha acima será criado um aquivo dentro da pasta corrente com esse nome ao final do processo, esse será o arquivo que irá conter os dados das suas chaves pública e privada.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Na solicitação acima digite uma senha ou deixe o campo em branco.
Pronto, sua chave está criada, dividida em dois arquivos NOME_DA_CHAVE e NOME_DA_CHAVE.pub
Instalando a Chave no BitBucket
Abra o BitCbucket e selecione o seguinte item de menu:
Avatar > Bitbucket Settings > Account Settings > SSH Keys
Copie a chave pública da sua màquina client:
$ cat ~/.ssh/NOME_DA_CHAVE.pub
ou
$ cat ~/.ssh/NOME_DA_CHAVE.pub | xclip -sel clip
Adicione o conteúdo da chave dentro da caixa Add SSH Key e dê um nome identificando a máquina geradora da chave
Clique em Add Key
Altere o repositório de HTTPS para SSH no Client
Altere de :
https://<accountname>@bitbucket.org/< accountname>/<reponame>.git
Para: git@bitbucket.org:<accountname>/<reponame>.git
Exemplo: Antigo mapeamento https:
$ cd /PATH_REPOSITORIO $ cat .git/config [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = https://USUARIO@bitbucket.org/USUARIO/REPO_NAME.git [branch "master"] remote = origin merge = refs/heads/master
Novo Mapeamento:
[remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = git@bitbucket.org:USUARIO/REPO_NAME.git