¿Trabajas con más de una cuenta en Bitbucket (o GitHub) y te estás volviendo loco al clonar, hacer push o pull desde el mismo ordenador?
Aquí te explico paso a paso cómo configurarlo correctamente usando claves SSH, sin interferencias, sin errores de permisos y con una estructura clara y replicable.
✅ 1. Genera una clave SSH para cada cuenta
Desde tu terminal:
# Clave para la primera cuenta
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_user1 -C "correo_user1@dominio.com"
# Clave para la segunda cuenta
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_user2 -C "correo_user2@dominio.com"
Deja la passphrase vacía (o pon una si deseas más seguridad).
Esto genera dos archivos por usuario:
- Clave privada:
~/.ssh/id_ed25519_userX
- Clave pública:
~/.ssh/id_ed25519_userX.pub
✅ 2. Añade cada clave pública a la cuenta correspondiente
Bitbucket:
- Ve a bitbucket.org/account/settings/ssh-keys
- Haz clic en Add key
- Copia el contenido de:
cat ~/.ssh/id_ed25519_user1.pub
pbcopy < .ssh/id_ed25519_user1.pub
Y pégalo. Repite para el segundo usuario con su clave.
GitHub (si aplica):
- Ve a Settings > SSH and GPG keys
- Añade la clave igual que en Bitbucket.
✅ 3. Configura el archivo ~/.ssh/config
Edita o crea el archivo de configuración SSH:
nano ~/.ssh/config
Y añade:
# Cuenta Bitbucket usuario1
Host bitbucket.org-user1
HostName bitbucket.org
User git
IdentityFile ~/.ssh/id_ed25519_user1
IdentitiesOnly yes
# Cuenta Bitbucket usuario2
Host bitbucket.org-user2
HostName bitbucket.org
User git
IdentityFile ~/.ssh/id_ed25519_user2
IdentitiesOnly yes
Para GitHub, cambia
bitbucket.org
porgithub.com
en cada caso.
✅ 4. Añade las claves al agente SSH
Ejecuta:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519_user1
ssh-add ~/.ssh/id_ed25519_user2
Verifica:
ssh-add -l
✅ 5. Prueba la conexión por separado
Comprueba que todo funciona correctamente:
ssh -T git@bitbucket.org-user1
# Esperas ver: "logged in as usuario1"
ssh -T git@bitbucket.org-user2
# Esperas ver: "logged in as usuario2"
✅ 6. Clona y gestiona tus repositorios
Cuando clones un repo, usa la forma personalizada del host:
git clone git@bitbucket.org-user1:usuario1/mi-repo.git
Y para el segundo:
git clone git@bitbucket.org-user2:usuario2/otro-repo.git
⚠️ Es importante que uses
bitbucket.org-userX
tal como está definido en~/.ssh/config
, no el host por defecto.
🔄 7. Cambiar el origin
en un repositorio existente
Si ya tenías el repo y quieres cambiar la clave con la que se conecta:
git remote set-url origin git@bitbucket.org-user2:usuario2/otro-repo.git
Verifica:
git remote -v
🔍 Cómo ver y revisar tu configuración
- Ver claves activas:
ssh-add -l
- Ver configuración actual del repo:
git remote -v
- Ver archivo de configuración SSH:
cat ~/.ssh/config
❓ Preguntas frecuentes
¿Puedo tener más de 2 usuarios?
Sí, puedes tener tantos como quieras. Solo asegúrate de:
- Generar una clave diferente por usuario.
- Crear un
Host
personalizado para cada uno en~/.ssh/config
.
¿Y si me pide contraseña al hacer git push
?
Es probable que estés usando el host bitbucket.org
en lugar de bitbucket.org-userX
. Cambia el remote
con el comando:
git remote set-url origin git@bitbucket.org-userX:usuarioX/repo.git
¿Puedo hacer esto también con GitHub o GitLab?
¡Sí! Solo cambia bitbucket.org
por github.com
o gitlab.com
en la configuración.
🚀 Conclusión
Trabajar con varias cuentas de Git no tiene por qué ser un dolor de cabeza. Usando claves SSH bien organizadas y hosts personalizados, puedes mantener separadas tus identidades y trabajar cómodamente con múltiples proyectos y organizaciones.
¿Quieres el documento ya en Google Docs, con estilos y formato? Solo dime y te lo genero directamente.
Comentarios recientes