I believe I have discovered a bug with git tools. If you create a git branch, you can refer to that branch with case-insensitive alterations and it will track as the same branch. If I create branch "test" I cannot then create branch "Test" because the same name is already used. However, git commands ARE case-sensitive, causing unspecified behavior! If you create branch "test" and then run "git checkout Test" and then run "git branch" it will list the branches "master" and "test" and NEITHER ONE will be flagged * as the current branch! (It does not list Test and does not show any branch as being the current branch) As far as git is concerned... you're not on a branch! But you're secretly on the "test" branch. Also, I think this may cause further issues. Switching to "test" tells me that I am 1 commit behind master, but switching to "Test" gives no such message, and appears to want me to --set-upstream again, for the same branch. This is really bad behavior. I'm on MacOS so this may be unique to the Mac version of git tools.