Jeff King <peff@xxxxxxxx> writes: >> There is also this: >> >> $ git branch >> * master >> $ git BRANCH >> git: 'BRANCH' is not a git command. See 'git --help'. >> $ git config alias.branch 'branch -v' >> $ git branch >> * master >> $ git BRANCH >> * master 51c785c initial > > That is an interesting side effect, especially the latter BRANCH/branch > one. We usually do not allow overrides of actual git commands, but this > "fools" that check. This one is tricky. An obvious fix would be, because users expect that their aliases are case insensitive, the rule that forbids and ignores an alias that masks a real git subcommand should also apply case insensitively. But that opens another can of worms. If "git Branch" is forbidden to be an alias, it should not just fail but invoke "git branch", which would mean that Git subcommands should also be looked up case insensitively! I am not sure if we want to go there. > I agree it's an unexpected fallout. On the other hand, unless you are > _trying_ to do something funny, I don't think you'd ever hit on this > behavior. And if you are trying to do something funny, I think this > behaves in a reasonable and predictable manner. OK.