Felipe Contreras wrote: > On Sat, May 11, 2013 at 7:29 AM, Andrey Borzenkov <arvidjaar@xxxxxxxxx> wrote: > > I noticed that using git-remote-bzr, but as far as I can tell this is > > generic for all transport helpers using fast-export. > > > > > > > > What happened was "git push" failed due to merge conflict. So far so > > good - but from now on git assumes everything is up to date. > > > > bor@opensuse:/tmp/test/git> git push origin master > > To bzr::bzr+ssh://bor@localhost/tmp/test/bzr > > ! [rejected] master -> master (non-fast-forward) > > error: failed to push some refs to 'bzr::bzr+ssh://bor@localhost/tmp/test/bzr' > > hint: Updates were rejected because the tip of your current branch is behind > > hint: its remote counterpart. Merge the remote changes (e.g. 'git pull') > > hint: before pushing again. > > hint: See the 'Note about fast-forwards' in 'git push --help' for details. > > bor@opensuse:/tmp/test/git> git push origin master > > Everything up-to-date > > bor@opensuse:/tmp/test/git> > > > > The problem seems to be that git fast-export updates marks > > unconditionally, whether export actually applied or not. So next time > > it assumes everything is already exported and does nothing. > > > > Is it expected behavior? > > Indeed, this is the way it currently works, and it's not easy to fix. > We would need some way to make fast-export wait until we know the exit > status of the remote helper, and then tell it when it failed, so the > marks are not updated. > > However, the way remote-bzr/hg work is that the commits are still > there anyway. So if you merge the next time you push those commits are > already converted, so it's not a problem if fast-export is not > exporting them again. > > So even though it's not ideal, it should work. > > The problem is when the remote-helper crashes and the marks of > fast-export and the remote-helper are out of sync, and then the user > is really screwed. I sent patches that should fix this problem: http://article.gmane.org/gmane.comp.version-control.git/246187 -- Felipe Contreras -- To unsubscribe from this list: 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