Subject: Re: [PATCH] pull: refuse complete src:dst fetchspec arguments

From: "Wesley J. Landaker" <[email-masked]>
Date: Tue, 20 Oct 2009 13:29:15 -0600

On Tuesday 20 October 2009 12:23:06 Thomas Rast wrote:
> git-pull has historically accepted full fetchspecs, meaning that you
> could do
> 
>   git pull $repo A:B
> 
> which would simultaneously fetch the remote branch A into the local
> branch B and merge B into HEAD.  This got especially confusing if B
> was checked out.  New users variously mistook pull for fetch or read
> that command as "merge the remote A into my B", neither of which is
> correct.

One thought here is that if the change you suggested (and I personally like) 
in your "[RFC] pull/fetch rename" thread was made, then I would expect to be 
able to run this exact command to have git fetch the remote branch A into 
the local branch B (with no merging taking place, because I didn't say --
merge). So basically, it would be like "git fetch $repo A:B" is now.

I readily agree that the *current* behavior of that command would have 
probably caught me off-guard, since I probably only would have typed that on 
accident (e.g. using "pull" when I meant "fetch").