bisect: fix exiting when checkout failed in bisect_start()
authorChristian Couder <chriscool@tuxfamily.org>
Wed, 21 Sep 2011 05:17:24 +0000 (07:17 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 21 Sep 2011 11:55:15 +0000 (04:55 -0700)
Commit 4796e823 ("bisect: introduce --no-checkout support into porcelain." Aug 4 2011)
made checking out the branch where we started depends on the "checkout" mode. But
unfortunately it lost the "|| exit" part after the checkout command.

As it makes no sense to continue if the checkout failed and as people have already
complained that the error message given when we just exit in this case is not clear, see:

http://thread.gmane.org/gmane.comp.version-control.git/180733/

this patch adds a "|| die <hopefully clear message>" part after the checkout command.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Acked-by: Jon Seymour <jon.seymour@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-bisect.sh

index e0ca3fb853083d0ebdfe11e5eb3fead4723248ad..5fb42917a0a9c498dfc0c661f2f088d231024fd9 100755 (executable)
@@ -129,7 +129,8 @@ bisect_start() {
                start_head=$(cat "$GIT_DIR/BISECT_START")
                if test "z$mode" != "z--no-checkout"
                then
-                       git checkout "$start_head" --
+                       git checkout "$start_head" -- ||
+                       die "$(eval_gettext "Checking out '\$start_head' failed. Try 'git bisect reset <validbranch>'.")"
                fi
        else
                # Get rev from where we start.