Given, the following global config stored under ~/.gitconfig…
[user] name = Shitty Developer email = firstname.lastname@example.org
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 email@example.com 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 = firstname.lastname@example.org [includeIf "gitdir:~/github/"] path = ~/github/.gitconfig
Under ~/github/.gitconfig, add your GitHub user account’s email:-
[user] email = email@example.com
If the checked out project resides under ~/github/ directory, any committed code will now use firstname.lastname@example.org instead of email@example.com.