GNOME Bugzilla – Bug 345361
jhbuild does not fail if git merge fails
Last modified: 2008-03-09 19:06:12 UTC
cvs -z3 -q -d :pserver:anoncvs@anoncvs.freedesktop.org:/cvs/xlibs update -P -d -A . *** Checking out cairo *** [14/142] git pull Unpacking 54 objects 100% (54/54) done * refs/heads/1.0: same as branch '1.0' of git://git.freedesktop.org/git/cairo * refs/heads/origin: fast forward to branch 'master' of git://git.freedesktop.org/git/cairo * refs/heads/ps-surface: same as branch 'ps-surface' of git://git.freedesktop.org/git/cairo * refs/heads/surface-internals: same as branch 'surface-internals' of git://git.freedesktop.org/git/cairo Updating from a812b3c4908ff296877a648915d5f06696eebe9e to a3f2d92f11a1ab4d30dd0e33a0cd5ee19495eeb1. doc/public/tmpl/cairo-status.sgml: needs update doc/public/tmpl/cairo-text.sgml: needs update fatal: Entry 'doc/public/tmpl/cairo-status.sgml' not uptodate. Cannot merge. *** Checking out Xft *** [15/142] I would expect that jhbuild drops to the error menu and allows me to drop to a shell to delete the entire repository and re-checkout
What does is the status code of "git pull" when it fails like this? If processing didn't stop, then git must have returned with an exit status of 0 (indicating success). I wonder how else we can tell if the pull failed?
Do you have any further information on reproducing this problem?
err, I don't exactly know how git works and I ended up blowing away the directory and then re-running jhbuild update to get past the merge conflict. I will do a little research and see if I can figure out the return code when a merge fails.
*** Bug 351732 has been marked as a duplicate of this bug. ***
Probably needs a fix in git. We probably need a work around in place for people with current versions though. Probably by parsing the command output.
This was probably an old git bug. Current version of git (1.5.4) conflicts correctly and stops jhbuild. I have seen this behavior for a long time. *** Checking out liboil *** [1/1] git checkout M liboil/liboil-stdint.h Your branch is behind the tracked remote branch 'origin/master' by 2 commits, and can be fast-forwarded. git pull origin master Updating 36792e2..5142c40 liboil/liboil-stdint.h: needs update error: Entry 'liboil/liboil-stdint.h' not uptodate. Cannot merge. *** error during stage checkout of liboil: ########## Error running git pull origin master *** [1/1] I'll close the bug, because there is nothing worth to fix, IMHO. Feel free to reopen if you disagree.