Code

Bisect: convert revs given to good and bad to commits
authorUwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Thu, 22 Mar 2007 16:18:08 +0000 (17:18 +0100)
committerJunio C Hamano <junkio@cox.net>
Fri, 23 Mar 2007 08:48:29 +0000 (01:48 -0700)
Without this the rev could be (e.g.) a tag and then the condition to end the
bisect might fail and you have to check the already known to be bad revision
once more.

Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
git-bisect.sh

index b1c3a6b1c1af9815db473595f4eb3e9593425f10..dbce0dfec93e41f6c1246ce7648ca1c40aeef5b0 100755 (executable)
@@ -85,7 +85,7 @@ bisect_bad() {
        0)
                rev=$(git-rev-parse --verify HEAD) ;;
        1)
-               rev=$(git-rev-parse --verify "$1") ;;
+               rev=$(git-rev-parse --verify "$1^{commit}") ;;
        *)
                usage ;;
        esac || exit
@@ -104,7 +104,7 @@ bisect_good() {
        esac
        for rev in $revs
        do
-               rev=$(git-rev-parse --verify "$rev") || exit
+               rev=$(git-rev-parse --verify "$rev^{commit}") || exit
                echo "$rev" >"$GIT_DIR/refs/bisect/good-$rev"
                echo "# good: "$(git-show-branch $rev) >>"$GIT_DIR/BISECT_LOG"
                echo "git-bisect good $rev" >>"$GIT_DIR/BISECT_LOG"