Multiple Git Configurations
Published:
, Updated:
Talks about:
<a class="post-tag post-tag-config" href="/tags/config">config</a>, and <a class="post-tag post-tag-git" href="/tags/git">git</a>
To split yet re-use as much configuration for Git as possible, you can create one root configuration that looks similar to this:
[user]
name = Your Name Here
[includeIf "gitdir:~/git/personal/"]
path = ~/.config/git/personal
[includeIf "gitdir:~/git/work/"]
path = ~/.config/git/work
The includeIf directive supports multiple keywords. In my case, work and personal projects have a different root directory, therefore I can filter based on the location using gitdir
. The personal Git configuration simply looks like this:
[user]
email = [email protected]
and the work related configuration like this using a different email address:
[user]
email = [email protected]
Additional settings that are different for personal/work accounts can be split the same way, for example to use a different signing key for work.