From: Johannes Sixt Date: Tue, 10 Apr 2018 05:20:52 GMT Subject: Re: Windows > git.exe > the result of "git branch" does not always highlight the current branch Message-ID: <4de8574c-1b64-408c-ca7e-c6e3de2dfa4a@kdbg.org> In-Reply-To: Am 09.04.2018 um 21:26 schrieb Hari Lubovac: > It appears to be just a reporting issue. Probably not a big deal, but > I thought I should report this, if it hasn't been noticed: when a > branch is switched to by being named with non-original > character-casing, then it's not clear which branch is current. > > Example: > > C:\repo>git branch > * bar > foo > > C:\repo>git checkout Bar > Switched to branch 'Bar' > > C:\repo>git branch > bar > foo The bug is not that the branch is not marked, but that you are permitted to check out a branch that does not exist. This is a side-effect of the fact that branch names are sometimes stored using file names, and, as we know, file names are case-insensitive on Windows. I don't know of any efforts to fix that (I assume that it is not just a simple fix). In the meantime, I can only recommend: if it hurts, don't do it. If you call `git gc` before the checkout command, I would expect that you would not be able to check out branch 'Bar', because branches are represented unambiguously after 'gc' (not as file names). -- Hannes