From: Junio C Hamano Date: Mon, 19 Sep 2016 17:03:51 GMT Subject: Re: [PATCH v3] checkout: eliminate unnecessary merge for trivial checkout Message-ID: In-Reply-To: Junio C Hamano writes: >> "git checkout -b foo" (without -f -m or ) is defined in the >> manual as being a shortcut for/equivalent to: >> >> (1a) "git branch foo" >> (1b) "git checkout foo" >> >> However, it has been our experience in our observed use cases and all the >> existing git tests, that it can be treated as equivalent to: >> >> (2a) "git branch foo" >> (2b) "git symbolic-ref HEAD refs/heads/foo" >> ... > > I am still not sure if I like the change of what "checkout -b" is > this late in the game, though. Having said all that. I do see the merit of having a shorthand way to invoke your 2 above. It is just that I am not convinced that it is the best way to achieve that goal to redefine what "git checkout -b " (no other parameters) does.