Given, the following global config stored under ~/.gitconfig…
[user] name = Shitty Developer email = email@example.com
When committing any code, the above user info will always be used.
However, there are times you want to use a different user info depending on projects (ex: work projects, GitHub projects, etc)
This is one of many ways to solve this problem.
Let’s assume firstname.lastname@example.org configured in ~/.gitconfig is reserved for work-related projects.
To set up a different user email for GitHub projects, modify ~/.gitconfig with the following configuration:-
[user] name = Shitty Developer email = email@example.com [includeIf "gitdir:~/github/"] path = ~/github/.gitconfig
Under ~/github/.gitconfig, add your GitHub user account’s email:-
[user] email = firstname.lastname@example.org
If the checked out project resides under ~/github/ directory, any committed code will now use email@example.com instead of firstname.lastname@example.org.