]> asedeno.scripts.mit.edu Git - git.git/blobdiff - git-bisect.sh
bisect: teach "skip" to accept special arguments like "A..B"
[git.git] / git-bisect.sh
index 0d0e278c92c39f17b368eb6ead781a877bc8caed..6706bc1e7c34653fc6aac7e857fd3c86f11e43de 100755 (executable)
@@ -191,6 +191,21 @@ check_expected_revs() {
        done
 }
 
+bisect_skip() {
+        all=''
+       for arg in "$@"
+       do
+           case "$arg" in
+            *..*)
+                revs=$(git rev-list "$arg") || die "Bad rev input: $arg" ;;
+            *)
+                revs="'$arg'" ;;
+           esac
+            all="$all $revs"
+        done
+        bisect_state 'skip' $all
+}
+
 bisect_state() {
        bisect_autostart
        state=$1
@@ -630,8 +645,10 @@ case "$#" in
         git bisect -h ;;
     start)
         bisect_start "$@" ;;
-    bad|good|skip)
+    bad|good)
         bisect_state "$cmd" "$@" ;;
+    skip)
+        bisect_skip "$@" ;;
     next)
         # Not sure we want "next" at the UI level anymore.
         bisect_next "$@" ;;