Subject: Re: DWIM "git checkout frotz" to "git checkout -b frotz origin/frotz"

From: Clemens Buchacher <[email-masked]>
Date: Mon, 7 Jun 2010 23:12:53 +0200

On Mon, Jun 07, 2010 at 10:11:34PM +0200, Jan Krüger wrote:
> Clemens Buchacher <[email-masked]> wrote:
> 
> > I am telling git to checkout a branch. Instead it creates a branch.
> > That is what is confusing to me. Until I found the commit that
> > introduced it, I was sure it must be a bug.
> 
> I usually see the opposite kind of confusion on #git: someone cloned a
> repository and wants to work on one of the branches. After all, we tell
> everyone that clone copies all the history.
> 
> So they type "git checkout <that branch>"... and they get a weird
> error (what's a pathspec, anyway?).

I agree, that's a less than perfect error message. So let's improve
it. What about "unknown branch or file name"? Possibly also output
the most common synopsis?

> OMGWTFBBQ! Not knowing what's going
> on, they drop by in #git and hear they need to type something much less
> straightforward than "git checkout <that branch>". They don't really
> know why, so they probably assume it's because git is just so damn
> complicated and overengineered.

Well, but that's how it is. If we want more "global" branches, then
we will have to think about how to achieve that. But hiding what we
really have is not going to make it easier to understand.

> I have yet to see any newish users complain about the new syntax, by the
> way. You don't qualify, sorry. ;)

I started this entire thread only because someone on #git was
confused by it.