← Accueil

Publié le

Comment gérer plusieurs profils Git ?

Système Git Configuration
img of Comment gérer plusieurs profils Git ?
Image générée par Bing AI

La gestion de plusieurs identités Git est un défi courant dans le monde du développement logiciel. Que ce soit pour vos projets personnels, des tâches liées au travail ou diverses collaborations avec des clients, maintenir vos référentiels Git organisés et vous assurer de committer avec la bonne identité est essentiel.

Dans cet article, nous explorerons une méthode très simple qui vous permettra de toujours utiliser la bonne identité Git pour vos projets.

Cette méthode s'appuie sur l'article de Garrit Franke. Merci à lui pour les tips 🫶 !

Classification de vos projets Git

La première étape consiste à classer vos projets en différents niveaux :

.
└── Code
    ├── Work
    │   ├── repo - 1
    │   ├── repo - 2
    └── Perso
        ├── repo - 3
        ├── repo - 4

Dans cet exemple, vos projets personnels seront stockés dans un répertoire ~/Code/Perso.

Quant à vos projets professionnels, ceux-ci se retrouveront dans ~/Code/Work.

La configuration .gitconfig

Une fois que vous avez classifié vos projets, vous devrez modifier votre configuration Git. Le fichier de configuration global de Git se trouve dans ~/.gitconfig. Si vous avez déjà défini des paramètres tels que git config user.name "Foo Bar", vous les trouverez dans ce fichier.

L'un des avantages du fichier .gitconfig est que vous pouvez inclure conditionnellement d'autres fichiers de configuration, et c'est ce qui fera toute la différence. Voici un exemple de fichier ~/.gitconfig :

[user]
name = Foo Bar
email = foo@bar.local

[includeIf "gitdir:~/Code/Work"]
path = ~/.gitconfig-work

[includeIf "gitdir:~/Code/Perso"]
path = ~/.gitconfig-perso

Avec ce fichier, l'identité utilisée par défaut sera donc Foo Bar <foo@bar.local>.

Tandis que pour les projets présents dans ~/Code/Work, ils utiliseront la configuration de ~/.gitconfig-work. Enfin, pour les projets contenus dans ~/Code/Perso, la configuration de ~/.gitconfig-perso sera appliquée.

Voici le contenu du fichier ~/.gitconfig-perso :

[user]
name = Foo Perso
email = foo@perso.local

Et que le fichier ~/.gitconfig-work :

[user]
name = Foo Work
email = foo@work.local

Source: makeameme.org

Sources

Commentaires