On Tue, Mar 28, 2006 at 04:28:31PM +0300, Timo Hirvonen wrote: > I think fast-forward check in git-fetch is too strict: > > 28 16:13 /usr/src/git: git pull > Unpacking 33 objects > 100% (33/33) done > * refs/heads/todo: same as branch 'todo' of git://git.kernel.org/pub/scm/git/git > * refs/heads/maint: same as branch 'maint' of git://git.kernel.org/pub/scm/git/git > * refs/heads/origin: same as branch 'master' of git://git.kernel.org/pub/scm/git/git > * refs/heads/pu: does not fast forward to branch 'pu' of git://git.kernel.org/pub/scm/git/git; > not updating. > > After removing "exit 1" added by a9698bb22fb7b66e5882c3a5e7b2b8b53ea03f90 from > git-fetch "git pull" worked again. Continuing to walk after breaking a leg isn't a good idea, but that's basically what your change did. What has happened to you is the normal thing with branches that have been re-based or otherwise re-created. The better way to handle this kind of branches is to add a `+´ sign to the refspec for the pu branc in .git/remote/origin like: [ralf@blah git]$ cat .git/remotes/origin URL: git://www.kernel.org/pub/scm/git/git.git Pull: master:master Pull: todo:todo Pull: +next:next Pull: maint:maint Pull: +pu:pu Pull: html:html Pull: man:man [ralf@blah git]$ The next branch is handled the same way, so another `+´ sign. Ralf - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html