From: Junio C Hamano Date: Mon, 27 Aug 2007 20:39:03 GMT Subject: Re: new to git Message-ID: <7vabsczp94.fsf@gitster.siamese.dyndns.org> In-Reply-To: <46D33290.20405@op5.se> Andreas Ericsson writes: > git pull = git fetch + git merge. The notation you use above is obsoleted > and no longer works in git 1.5.3. Instead you'd have to replace > > git pull . foo > > with > > git merge foo > > which will most likely clear up some confusion. Huh? "git pull . foo" has always been the same as "git merge foo", I thought... Have we broken anything? >> (2) Any way to disable this warning: >> >> Warning: No merge candidate found because value of config option >> "branch.local.merge" does not match any remote branch fetched. >> > > Yes. Edit your .git/config file to add a merge candidate for your local > branch. Or, say what branch you get from the remote you want to merge explicitly. You may not always merge the same branch from the remote. E.g. $ git pull origin experimental $ git pull origin master >> (4) I'm still not clear on when a dst should and should not be used in a >> refspec. It appears that one can only do non-fast forward updates to >> the branch that is checked out (which makes sense, since you may need to >> resolve), but other than that, what is the difference between >> >> git checkout foo >> git pull . master >> >> and >> >> git checkout master >> git push . master:foo >> >> ? >> > > Here I'm clueless, except that this matches old syntax which is no longer > valid. Huh again about "no longer valid" part. In any case, the former says "I am on foo branch, and I want to merge 'master' from _MY_ local repository". The latter says "I want to update the local branch 'foo' with what is in my 'master' branch, both local". They are totally different. Please do _not_ spread backward incompatibility FUD.