21.10.2023
Wie kann man zwischen globalen Git Konfigurationen wechseln?
Ich habe diese tolle Anleitung gefunden: Can I specify multiple users for myself in .gitconfig?
Die Idee: Einfach den Pfad des Git-Verzeichnisses in einem IncludeIf untersuchen und damit eine Konfiguration einbinden. Man legt dann unterschiedliche Konfigurationsdateien für verschiedene Pfade an und wechselt darüber die Committer E-Mail Adresse:
~/.gitconfig-work
[user]
email = worker@example.com
bzw.
~/.gitconfig-personal
[user]
email = personal@example.org
In der zentralen Git-Konfigurationsdatei werden dann die IncludeIfs ergänzt:
[includeIf "gitdir:work/"]
path = .gitconfig-work
[includeIf "gitdir:personal/"]
path = .gitconfig-personal
Überprüfen kann man das Ganze dann in einem Git-Verzeichnis mit
git config -l | grep user
user.name=Billy Dean
user.email=worker@example.com
IncludeIf hat eine mächtige Syntax (angelehnt an gitignore). Es erlaubt die Verwendung von führendem "~", "." oder "/". Ansonsten wird "**/" ergänzt. Ein abschließendes "/" wird zu "/**" erweitert (siehe auch hier).