On Sat, May 13, 2017 at 08:52:37PM -0700, Stefan Beller wrote: > NEEDSWORK: > > checkout -b remotes/origin/<branch> should not work, unless force is > given (maybe?) > > (I just run into that, now I have a remote tracking branch that points > at my detached HEAD. Oh well.) To be pedantic, you have a local branch with a funny name that points to your detached HEAD. :) I think this problem extends beyond "remotes/". The worst is: git checkout -b HEAD but there are many confusing variants: git checkout -b refs/heads/foo git checkout -b tags/v1.0 etc. Those are all perfectly legal names, but almost certainly not what the user intended. I think the plumbing should continue to allow them, but I wouldn't object to some common-sense think-o protections in the "checkout -b" plumbing (especially if it could be disabled for power users). -Peff