Utiliser plusieurs comptes GitLab et clés SSH

GitLab plusieurs clés SSH
Web pratique Lecture 7 minutes • 3 janvier 2020

Voici comment utiliser deux comptes GitLab avec deux clés SSH sur un même ordinateur. C'est très pratique pour distinguer ses projets professionnels et personnels, par exemple.
Il faut savoir que GitLab ne permet pas d'associer une même clé SSH à plusieurs comptes GitLab. C'est pourquoi nous allons voir comment configurer 2 clés SSH sur l'ordinateur.
Cette méthode détaille spécifiquement point par point comment y arriver sur un environnement Windows 10, avec l'aide de Git Bash. Elle reste valable pour les utilisateurs Mac OS ou Linux.
 
Partons du principe que nous avons créé les 2 comptes GitLab suivants :

  • Compte Perso, nom d'utilisateur ("Full name" dans GitLab) : perso, email : perso@mail.com
  • Compte Pro, nom d'utilisateur ("Full name" dans GitLab) : pro, email : pro@mail.com

 

Générer les clés SSH sur votre ordinateur

Générer la clé SSH du compte Perso

Ouvrir Git Bash et saisir la commande suivante (remplacer l'adresse e-mail par celle de votre premier compte GitLab)
[pastacode lang="bash" manual="%24%20ssh-keygen%20-t%20rsa%20-C%20%22perso%40email.com%22" message="Demande de génération de la clé SSH pour le compte Perso" highlight="" provider="manual"/]
 
Le message suivant s'affiche alors :
[pastacode lang="bash" manual="Enter%20file%20in%20which%20to%20save%20the%20key%20(%2Fc%2FUsers%2FMoi%2F.ssh%2Fid_rsa)%3A%0A" message="" highlight="" provider="manual"/]
 
Ajouter à la suite de ce message le nom du nouveau fichier à générer pour le compte Perso (id_rsa_perso), ce qui ressemble à ceci :
[pastacode lang="bash" manual="Enter%20file%20in%20which%20to%20save%20the%20key%20(%2Fc%2FUsers%2FMoi%2F.ssh%2Fid_rsa)%3A%2Fc%2FUsers%2FMoi%2F.ssh%2Fid_rsa_perso" message="On précise la création de la clé SSH pour le compte Perso" highlight="" provider="manual"/]
Appuyer ensuite deux fois sur Entrée lorsqu'un mot de passe vous est demandé.

Générer la clé SSH du compte Pro

On renouvelle la même procédure que précédemment,
Dans Git Bash saisir la commande suivante (remplacer l'adresse e-mail par celle de votre second compte GitLab)
[pastacode lang="bash" manual="%24%20ssh-keygen%20-t%20rsa%20-C%20%22pro%40email.com%22" message="Demande de génération de la clé SSH pour le compte Pro" highlight="" provider="manual"/]
 
Le message suivant s'affiche alors :
[pastacode lang="bash" manual="Enter%20file%20in%20which%20to%20save%20the%20key%20(%2Fc%2FUsers%2FMoi%2F.ssh%2Fid_rsa)%3A%0A" message="" highlight="" provider="manual"/]
 
Ajouter à la suite de ce message le nom du nouveau fichier à générer pour le compte Pro (id_rsa_pro), ce qui ressemble à ceci :
[pastacode lang="bash" manual="Enter%20file%20in%20which%20to%20save%20the%20key%20(%2Fc%2FUsers%2FMoi%2F.ssh%2Fid_rsa)%3A%2Fc%2FUsers%2FMoi%2F.ssh%2Fid_rsa_pro" message="On précise la création de la clé SSH pour le compte Pro" highlight="" provider="manual"/]
Appuyer ensuite deux fois sur Entrée lorsqu'un mot de passe vous est demandé.

Vérifier la bonne création des clés SSH sur votre ordinateur

Dans Windows, aller dans le disque principal (C:) > Utilisateurs > Moi (votre nom d'utilisateur) > .ssh
Dans ce dossier .ssh doivent à présent s'afficher 2 fichiers "id_rsa_perso" et 2 fichiers"id_rsa_pro"
 
Ou bien, utiliser le code suivant dans Git Bash
[pastacode lang="bash" manual="%24%20ls%20~%2F.ssh" message="On demande la liste des clés SSH enregistrées" highlight="" provider="manual"/]
On obtient alors la liste des clés privées et publiques (.pub)
[pastacode lang="bash" manual="id_rsa_perso%20%20id_rsa_pro%20%20id_rsa_perso.pub%20%20id_rsa_pro.pub" message="Liste des clés privées et publiques" highlight="" provider="manual"/]
 

Création et configuration du fichier config

Créer un fichier nommé config (avec Notepad ou Sublime Text par exemple), dans le dossier .ssh
Ajouter le code suivant, adaptez-le à votre cas et enregistrer :
[pastacode lang="bash" manual="%23%20Compte%20Perso%0AHost%20gitlab.com-perso%0A%20%20%20HostName%20gitlab.com%0A%20%20%20PreferredAuthentications%20publickey%0A%20%20%20IdentityFile%20~%2F.ssh%2Fid_rsa_perso%0A%0A%23%20Compte%20Pro%0AHost%20gitlab.com-pro%0A%20%20%20HostName%20gitlab.com%0A%20%20%20PreferredAuthentications%20publickey%0A%20%20%20IdentityFile%20~%2F.ssh%2Fid_rsa_pro" message="Créer le fichier config dans le dossier .ssh" highlight="" provider="manual"/]
Quand on souhaiteras utiliser le compte perso,
on utilisera l'Host gitlab.com-perso, lié au fichier SSH id_rsa_perso
Quand on souhaiteras utiliser le compte pro,
on utilisera l'Host gitlab.com-pro, lié au fichier SSH id_rsa_pro
 

Ajouter les clées SSH à vos comptes GitLab et tester

Ajout des clées publiques aux comptes GitLab

La commande suivante à faire dans Git Bash va afficher la clé SSH publique pour le compte Perso.
[pastacode lang="bash" manual="%24%20cat%20~%2F.ssh%2Fid_rsa_perso.pub" message="Saisir dans Git Bash pour afficher la clé publique du compte Perso" highlight="" provider="manual"/]
Copier la clé et la coller dans le compte GitLab (votre premier compte) : Settings > SSH Keys
 
On renouvelle l'opération avec le compte Pro cette fois,
La commande suivante à faire dans Git Bash va afficher la clé SSH publique pour le compte Pro.
[pastacode lang="bash" manual="%24%20cat%20~%2F.ssh%2Fid_rsa_pro.pub" message="Saisir dans Git Bash pour afficher la clé publique du compte Pro" highlight="" provider="manual"/]
Copier la clé et la coller dans le compte GitLab (votre second compte) : Settings > SSH Keys

On teste les connexions

On teste la bonne connexion avec GitLab depuis l'interface de Git Bash à l'aide du code suivant :
[pastacode lang="bash" manual="%24%20ssh%20-T%20git%40gitlab.com-perso%0AWelcome%20to%20GitLab%2C%20Perso!" message="Vérification de la connexion au compte Perso GitLab" highlight="" provider="manual"/]
[pastacode lang="bash" manual="%24%20ssh%20-T%20git%40gitlab.com-pro%0AWelcome%20to%20GitLab%2C%20Pro!" message="Vérification de la connexion au compte Pro GitLab" highlight="" provider="manual"/]
 
Les connexions sont bonnes, on peut passer aux cas pratiques et commencer à communiquer avec GitLab !
 

Exemple d'utilisation avec un Git Push initial

Dans cet exemple, nous avons un site WordPress développé en local, que nous souhaitons "pousser" pour la première fois vers notre compte GitLab Perso.
[pastacode lang="bash" manual="cd%20existing_folder%0Agit%20init%0Agit%20remote%20add%20origin%20git%40gitlab.com%3Aperso%2Ffd.git%0Agit%20add%20.%0Agit%20commit%20-m%20%22Initial%20commit%22%0Agit%20push%20-u%20origin%20master" message="Code classique suggéré par GitLab" highlight="" provider="manual"/]
[pastacode lang="bash" manual="cd%20existing_folder%0Agit%20init%0Agit%20remote%20add%20origin%20git%40gitlab.com-perso%3Aperso%2Ffd.git%0Agit%20add%20.%0Agit%20commit%20-m%20%22Initial%20commit%22%0Agit%20push%20-u%20origin%20master" message="Code modifié pour utiliser le compte Perso avec GitLab et faire le premier Push" highlight="" provider="manual"/]
 
Autrement dit, au lieu d'écrire :

git remote add origin git@gitlab.com:perso/fd.git

 
On précise le choix d'utiliser le compte Perso et donc d'écrire :

git remote add origin git@gitlab.com-perso:perso/fd.git

 

Exemple d'utilisation avec un Git Clone depuis GitLab

Dans cet exemple, nous avons un site WordPress sur notre compte Pro GitLab et nous souhaitons le récupérer en local sur notre ordinateur.
[pastacode lang="bash" manual="git%20clone%20git%40gitlab.com%3ATibowWebdesign%2Ffd.git%0Acd%20fd%0Atouch%20README.md%0Agit%20add%20README.md%0Agit%20commit%20-m%20%22add%20README%22%0Agit%20push%20-u%20origin%20master" message="Code classique suggéré par GitLab" highlight="" provider="manual"/]
[pastacode lang="bash" manual="git%20clone%20git%40gitlab.com-pro%3Apro%2Ffd.git%0Acd%20fd%0Atouch%20README.md%0Agit%20add%20README.md%0Agit%20commit%20-m%20%22add%20README%22%0Agit%20push%20-u%20origin%20master" message="Code modifié pour utiliser le compte Pro avec GitLab et faire un Clone" highlight="" provider="manual"/]
 
Autrement dit, au lieu d'écrire :

git clone git@gitlab.com:pro/fd.git

 
On précise le choix d'utiliser le compte Pro et donc d'écrire :

git clone git@gitlab.com-pro:pro/fd.git

 
A vous de jouer maintenant !



Si cet article vous a aidé, lâchez votre plus bel applaudissement en remerciement ! 🤗


Avis clients

Tibow Webdesign

Tous les avis

Anaee France - anaee-france.fr 07/2023

Google Avis
Nous avons eu le plaisir de travailler avec Thibaut pour une refonte totale de notre site web, et avons particulièrement apprécié son dynamisme, ses compétences (notamment en webdesign mais également pour le développement web et la communication), ses conseils pour redonner un coup de jeune à notre site web, et sa réactivité. De plus Thibaut a très vite montré un intérêt pour nos sujets (recherche scientifique, étude des écosystèmes) et rapidement compris nos besoins pour améliorer notre visibilité, c’est un vrai plus ! Je remercie et recommande Thibaut pour le développement de sites web

Sabine Sans Photographe - sabinesans.fr Mai 2023

Google Avis
Je suis très satisfaite de mon site internet, il est épuré et fonctionnel comme je le souhaitais. Merci Thibaut, vous avez su être à l'écoute, rassurant et réactif.

Louise Malassigné - loumade.fr Novembre 2022

Google Avis
J’ai eu l’occasion de travailler avec Thibaut sur la refonte d’un site e-commerce pour un château, cela c’est très bien passé, la cliente était ravie de la prestation et du site. Thibaut est très réactif et professionnel. Je recommande !

Julie Deshayes Aout 2022

Google Avis
Thibaut a aidé mon club de ski nautique à apparaître sur internet , il est d’une rapidité et d’une efficacité extraordinaire, je vous recommande

Centre Emile Durkheim - centreemiledurkheim.fr Avril 2022

Google Avis
Nous avons fait appel à Thibaut pour la refonte de notre site web. nous sommes très contents de sa prestation, tant sur le plan humain que technique. Thibaut s'est rendu disponible. Il a su être à l'écoute, à su s'adapter à nos besoins spécifiques, a été force de propositions. C'est un réel plaisir de travailler avec Thibaut, nous ferons appel de nouveau à lui les yeux fermés.

Nicolas Bourvic - lecirejaune.com 25 février 2022

Consultant junior agence Le Ciré Jaune
Consultant en agence de communication, j'ai à plusieurs reprises fait appel à Thibaut pour la réalisation de sites internet (à ce jour 4). Professionnalisme, réactivité et une vraie compréhension du besoin client définit Thibaut.
Vous pouvez vous fier à son expertise, il saura répondre à vos questions les plus techniques. De plus, Thibaut n'est pas qu'un exécutant mais est force de proposition et construit une relation bienveillante et respectueuse, ce qui est déterminant pour la bonne réalisation d'un projet.

Je recommande vivement et je continuerai à faire appel à Thibaut.

Charlotte Devillers - dydu.ai 25 février 2022

Digital Marketing Manager at dydu
Pour la gestion de notre site web, nous sommes passés d'une agence à Thibaut et nous ne regrettons pas notre décision ! Thibaut est un véritable couteau suisse : c'est un expert en dév, webdesign, web marketing… La complémentarité de toutes ces compétences font que Thibaut comprend rapidement nos objectifs marketing et commerciaux, proposant ainsi des conseils et un accompagnement précieux. En plus de ses compétences techniques multiples, Thibaut est très à l'écoute, réactive, proactif, très bon communicant… Vous pouvez lui faire confiance les yeux fermés ! Merci Thibaut pour ton professionnalisme et ton expertise, c'est un réel plaisir de travailler avec toi.

Philippe Carne - hocklines.fr 16/02/2022

Google Avis
Un professionnel à votre écoute.

Pour notre asso sportive, nous avions besoin de revisiter notre site.
Tibow Webdesign a su nous accompagner du début à la fin de ce projet.

Une écoute active, une recherche de solutions, une connaissance des outils, de la réactivité, de l'adaptation, des conseils généraux sur la communication... Voilà pour l'essentiel des choses que Thibaut a su nous transmettre.

Nous en sommes au début... Mais le nouveau site a été vite adopté par notre public. Et de bonnes stats sont au rendez vous.

Aurore Grand 17 janvier 2022

Google Avis
J'ai vu un commentaire de Thibault sur une extension WordPress, qui ne fonctionnait pas sur mon site. Je l'ai donc contacté pour savoir si il pouvait m'aider. En moins d'une heure, il m'a répondu et il m'a gentiment aider. Un grand merci.

Charlotte Séjourné - Wildust.com 10 septembre 2021

Google Avis
Thibaut est une personne super disponible et très pro.
Chaque projet confié a été géré avec beaucoup de professionnalisme et pas mal de pédagogie pour les néophytes comme moi! C'est super appréciable.
Lire plus