Git: Set local user.name and user.email different for each repo

Question

I'm currently working on 2 projects, which expect that I configure my local username and email with different data when I push to them. For that I'm updating my config all the time like:

git config --local user.email "[email protected]"

Since they are different repositories, is there a way I could define an local email for each repository?

Maybe in the .gitconfig?

Answer

For just one repo, go into to the relevant repo DIR and:

git config user.name "Your Name Here"
git config user.email [email protected]

For (global) default email (which is configured in your ~/.gitconfig):

git config --global user.name "Your Name Here"
git config --global user.email [email protected]

You can check your Git settings with: git config user.name && git config user.email

If you are in a specific repo which you setup a new user/config for (different to global) then it should show that local config, otherwise it will show your global config.

What does git push -u mean?

How to cancel a local git commit?