Noticias

Configuración de varias cuentas de trabajo en un mismo equipo en bitbucket

Tanto si trabajas como autónomo, como si colaboras con varios proyectos es posible que prefieras tener distintas cuentas de trabajo para tener separados los proyectos en los que colaboras. En el siguiente artículo creamos dos cuentas en el repositorio de código de bitbucket y las configuramos de manera que podamos utilizarlas desde un mismo equipo.

Bitbucket es un fantástico servicio que te permite disponer de tu repositorio de datos al estilo de github en el que puedes tener la información de tus proyectos, a diferencia de github permite disponer de repositorios privados de forma gratuita. Una "limitación" de este sistema es que no permite utilizar el mismo identificadore ssh para diferentes cuentas.

Debido a este comportamiento, nuestro trabajo consistirá en configurar nuestro equipo de manera que sea capaz de utilizar las claves correctas en función del repositorio al que accedemos, para ellos utlizaremos el fichero de configuración personal de ssh.

Supongamos que tenemos un user1 que es el que venimos utilizando con normalidad, vamos a suponer que creamos una segunda cuenta en bitbucket para tener un usuario adicional, que por simplicidad en el artículo llamaremos "user2".

A fin de evitar estar introduciendo continuamente nuestro usuario y clave, la comunicación con bitbucket se realiza a través de la generación de claves ssh, por ello el primer paso es generar las claves adecuadas para esta comunicación. Como contamos con dos usuarios y debido a la limitación comentada más arriba crearemos una clave para cada uno:

ssh-keygen -t rsa -f ~/.ssh/user1
ssh-keygen -t rsa -f ~/.ssh/user2

Ahora tenemos que copiar el contenido de las claves públicas en sus respectivas cuentas, para el user1 sería, copiar el contenido del fichero  ~/.ssh/user1.pub de forma manual o bien copiarlo por línea de comandos al portapapeles con alguna utilidad como xclip:

xclip -sel clip < ~/.ssh/user1.pub

Una vez copiado, vamos a la configuración de cuenta de user1 en bitbucket y en SSH Keys agregamos la nueva clave:


Bitbucket-agregar-ssh-key

Hay que repetir estos mismos pasos para el user2.

Bien, ahora sólo queda configurar nuestro equipo local para que haga uso de la clave correspondiente al usuario que estamos utlizando, y para ello editamos el fichero de configuración:

vim ~/.ssh/config

Y agregamos estas líneas:

Host bitbucket-user1
 HostName bitbucket.org
 IdentityFile ~/.ssh/user1 

Host bitbucket-user2
 HostName bitbucket.org
 IdentityFile ~/.ssh/user2 

 

Ahora cuando clones un proyecto sólo tienes que tener en cuenta el usuario con el que quieres trabajar, así para clonar con user1 procederemos a indicar su cuenta:

git clone git@bitbucket-user1:company/project.git

Y para clonar con user 2

git clone git@bitbucket-user2:company/project.git

Ahora no deberías tener problemas para clonar y actualizar proyectos con ambos usuarios.


Linux GIT


Compartir mola!!