GIT

Git along with many revision control systems these days have a bug which prevents a client to easily have a different user account for each repository. While you can always control this via commands for the local repository when your working with a GUI front-end it gets even harder because most of those rely on the global setting and don't provide the ability to set local configuration options.

This trick allows you to have a different git configuration file per-folder. This example has two different folders, one for personal and one for my work.

Edit your global .gitconfig folder and add the following includeIf statements. For this example my development folders are on drive D: in folders work and personal.

.gitconfig
[includeIf "gitdir/i:d:/work/"]
	path = d:/work/.gitconfig
[includeIf "gitdir/i:d:/personal/"]
	path = d:/personal/.gitconfig
 
.gitconfig
[user]
    name = First Last
    username = flast
    email = flast@mywork.com

Many GUI applications have I feel is a bug modify the global git file as if it's their own and not yours. So ensure you have backups. One option I like is to make it read only which often blocks the application from screwing it up without telling me.