Git - Utiliser plusieurs compte en même temps




Introduction :


Le but de ce tutoriel est de pouvoir utiliser plusieurs comptes git sur la même machine.

Pré-requis :

Avoir au moins deux clés ssh dans le dossier ~/.ssh
Avoir un projet qui fonctionne en ssh. Github SSH documentation

Pour afficher les clés ssh :

ls ~/.ssh

Par exemple :

id_rsa_perso.pub       id_rsa_pro.pub
id_rsa_perso              id_rsa_pro

Nous avons bien nos clés privé et publique pour les deux environnements pro et perso.

Configuration ssh :

nano ~/.ssh/config

On va ajouter ça :

Host github.com
User git
IdentityFile ~/.ssh/id_rsa_pro

Host github.com-perso
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_perso

Ça permet de définir que le domaine github.com utilise la clé id_rsa_pro et le domaine github.com-perso utilise la clé id_rsa_perso.

Ajouter des clés ssh dans l’agent :

ssh-add ~/.ssh/id_rsa_pro
Identity added: *****/~/.ssh/id_rsa_pro
ssh-add ~/.ssh/id_rsa_perso
Identity added: *****/~/.ssh/id_rsa_perso

Cloner le second projet :

Au lieu de :
git clone github.com:organisation/repository.git

On renomme le nom de domaine avec le nom de domaine perso définit précédemment :
git clone github.com-perso:organisation/repository.git

On se place dans le dossier du depôt :

cd repository

on ajoute un nom et un email :

git config user.name "authorName"
git config user.email author@gmail.com

Maintenant vous pouvez exécuter :

git pull

Normalement vous n'avez aucune erreur.

Par exemple :


Cloning into 'Repository'...
remote: Enumerating objects: 69, done.
remote: Counting objects: 100% (69/69), done.
remote: Compressing objects: 100% (48/48), done.
remote: Total 635 (delta 35), reused 49 (delta 21), pack-reused 566
Receiving objects: 100% (635/635), 136.17 KiB | 783.00 KiB/s, done.
Resolving deltas: 100% (385/385), done.

Remarque :

Ce tutoriel à été fait sur mac/linux. Mais il est compatible windows en remplaçant la commande ls par dir, et utiliser un éditeur de texte à la place de nano.

Conclusion :

Vous êtes maintenant capable de configurer votre environement pour utiliser plusieurs depôts en même temps.

Commentaires