If you have multiple accounts that you must use with Git — such as a personal and a work account — you can have your Git Config (typically
~/.gitconfig) conditionally include other configs depending on the folder you’re working in. In those extra configs you then can override some settings.
Here’s an example
~/.gitconfig that has two dynamic includes:
[user] name = "John Doe" [includeIf "gitdir:~/repos/personal/"] path = ~/.gitconfig.personal [includeIf "gitdir:~/repos/work/"] path = ~/.gitconfig.work
~/.gitconfig.XXX you can then list extra config values, here the email address to use for each:
[user] email = firstname.lastname@example.org
💡 If you want to use individual SSH keys for each account, there’s some more steps you need to take.