Volver al blog

Utilizando diferentes identidades rsa en git

Resumen Técnico & Objetivo

Cuando utilizamos Git y tenemos diferentes proyectos cada uno con diferente proveedor podemos configurar/utilizar una llave en específico para cada proveedor. En este caso de us...


Cuando utilizamos Git y tenemos diferentes proyectos cada uno con diferente proveedor podemos configurar/utilizar una llave en específico para cada proveedor.

En este caso de uso vamos a configurar dos llaves Git una para Gitlab y otra para Bitbucket

Creamos las llaves

  1. Creamos la llave para Gitlab
    $ ssh-keygen -t rsa
    Generating public/private rsa key pair.
    Enter file in which to save the key (~/user/.ssh/id_rsa): ~/user/.ssh/gitlab-key
  2. Creamos la llave para Bitbucket
    $ ssh-keygen -t rsa
    Generating public/private rsa key pair.
    Enter file in which to save the key (~/user/.ssh/id_rsa): ~/user/.ssh/gitlab-key

Configuramos las llaves

  1. Configuramos las llaves en el archivo ~/.ssh/config
    Host gitlab
      HostName gitlab.com
      User git
      IdentityFile ~/.ssh/gitlab-key
      IdentitiesOnly yes
    Host bitbucket
      HostName bitbucket.org
      User git
      IdentityFile ~/.ssh/bitbucket-key
      IdentitiesOnly yes

Utilizando la configuración

Ahora ya podemos utilizar los comandos para clonar y hacer push

  1. Clonar repositorios

    $ git clone git@gitlab:my-page.git
    $ git clone git@bitbucket:project-one/my-blog.git
  2. Agregamos las directivas a los repositorios

    git remote add gitlab git@gitlab:awesomeproject.git
    git remote add bitbucket git@bitbucket:project-one/my-blog.git
  3. Subimos cambios

    git push gitlab main
    git push bitbucket  master