mirror of
https://github.com/git/git
synced 2024-09-12 21:04:12 +00:00
bisect: add 'git bisect terms' to view the current terms
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
21e5cfd8b3
commit
21b55e3369
|
@ -19,6 +19,7 @@ on the subcommand:
|
||||||
git bisect start [--no-checkout] [<bad> [<good>...]] [--] [<paths>...]
|
git bisect start [--no-checkout] [<bad> [<good>...]] [--] [<paths>...]
|
||||||
git bisect (bad|new) [<rev>]
|
git bisect (bad|new) [<rev>]
|
||||||
git bisect (good|old) [<rev>...]
|
git bisect (good|old) [<rev>...]
|
||||||
|
git bisect terms [--term-good | --term-bad]
|
||||||
git bisect skip [(<rev>|<range>)...]
|
git bisect skip [(<rev>|<range>)...]
|
||||||
git bisect reset [<commit>]
|
git bisect reset [<commit>]
|
||||||
git bisect visualize
|
git bisect visualize
|
||||||
|
@ -157,6 +158,15 @@ git bisect new [<rev>...]
|
||||||
|
|
||||||
to indicate that it was after.
|
to indicate that it was after.
|
||||||
|
|
||||||
|
To get a reminder of the currently used terms, use
|
||||||
|
|
||||||
|
------------------------------------------------
|
||||||
|
git bisect terms
|
||||||
|
------------------------------------------------
|
||||||
|
|
||||||
|
You can get just the old (respectively new) term with `git bisect term
|
||||||
|
--term-old` or `git bisect term --term-good`.
|
||||||
|
|
||||||
Bisect visualize
|
Bisect visualize
|
||||||
~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
USAGE='[help|start|bad|good|new|old|skip|next|reset|visualize|replay|log|run]'
|
USAGE='[help|start|bad|good|new|old|terms|skip|next|reset|visualize|replay|log|run]'
|
||||||
LONG_USAGE='git bisect help
|
LONG_USAGE='git bisect help
|
||||||
print this long help message.
|
print this long help message.
|
||||||
git bisect start [--no-checkout] [<bad> [<good>...]] [--] [<pathspec>...]
|
git bisect start [--no-checkout] [<bad> [<good>...]] [--] [<pathspec>...]
|
||||||
|
@ -11,6 +11,8 @@ git bisect (bad|new) [<rev>]
|
||||||
git bisect (good|old) [<rev>...]
|
git bisect (good|old) [<rev>...]
|
||||||
mark <rev>... known-good revisions/
|
mark <rev>... known-good revisions/
|
||||||
revisions before change in a given property.
|
revisions before change in a given property.
|
||||||
|
git bisect terms [--term-good | --term-bad]
|
||||||
|
show the terms used for old and new commits (default: bad, good)
|
||||||
git bisect skip [(<rev>|<range>)...]
|
git bisect skip [(<rev>|<range>)...]
|
||||||
mark <rev>... untestable revisions.
|
mark <rev>... untestable revisions.
|
||||||
git bisect next
|
git bisect next
|
||||||
|
@ -453,6 +455,8 @@ bisect_replay () {
|
||||||
eval "$cmd" ;;
|
eval "$cmd" ;;
|
||||||
"$TERM_GOOD"|"$TERM_BAD"|skip)
|
"$TERM_GOOD"|"$TERM_BAD"|skip)
|
||||||
bisect_write "$command" "$rev" ;;
|
bisect_write "$command" "$rev" ;;
|
||||||
|
terms)
|
||||||
|
bisect_terms $rev ;;
|
||||||
*)
|
*)
|
||||||
die "$(gettext "?? what are you talking about?")" ;;
|
die "$(gettext "?? what are you talking about?")" ;;
|
||||||
esac
|
esac
|
||||||
|
@ -606,6 +610,37 @@ bisect_voc () {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bisect_terms () {
|
||||||
|
get_terms
|
||||||
|
if ! test -s "$GIT_DIR/BISECT_TERMS"
|
||||||
|
then
|
||||||
|
die "$(gettext "no terms defined")"
|
||||||
|
fi
|
||||||
|
case "$#" in
|
||||||
|
0)
|
||||||
|
gettextln "Your current terms are $TERM_GOOD for the old state
|
||||||
|
and $TERM_BAD for the new state."
|
||||||
|
;;
|
||||||
|
1)
|
||||||
|
arg=$1
|
||||||
|
case "$arg" in
|
||||||
|
--term-good|--term-old)
|
||||||
|
printf '%s\n' "$TERM_GOOD"
|
||||||
|
;;
|
||||||
|
--term-bad|--term-new)
|
||||||
|
printf '%s\n' "$TERM_BAD"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
die "$(eval_gettext "invalid argument \$arg for 'git bisect terms'.
|
||||||
|
Supported options are: --term-good|--term-old and --term-bad|--term-new.")"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
usage ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
case "$#" in
|
case "$#" in
|
||||||
0)
|
0)
|
||||||
usage ;;
|
usage ;;
|
||||||
|
@ -635,6 +670,8 @@ case "$#" in
|
||||||
bisect_log ;;
|
bisect_log ;;
|
||||||
run)
|
run)
|
||||||
bisect_run "$@" ;;
|
bisect_run "$@" ;;
|
||||||
|
terms)
|
||||||
|
bisect_terms "$@" ;;
|
||||||
*)
|
*)
|
||||||
usage ;;
|
usage ;;
|
||||||
esac
|
esac
|
||||||
|
|
|
@ -797,4 +797,24 @@ test_expect_success 'bisect cannot mix old/new and good/bad' '
|
||||||
test_must_fail git bisect old $HASH1
|
test_must_fail git bisect old $HASH1
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'bisect terms needs 0 or 1 argument' '
|
||||||
|
git bisect reset &&
|
||||||
|
test_must_fail git bisect terms only-one &&
|
||||||
|
test_must_fail git bisect terms 1 2 &&
|
||||||
|
test_must_fail git bisect terms 2>actual &&
|
||||||
|
echo "no terms defined" >expected &&
|
||||||
|
test_cmp expected actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'bisect terms shows good/bad after start' '
|
||||||
|
git bisect reset &&
|
||||||
|
git bisect start HEAD $HASH1 &&
|
||||||
|
git bisect terms --term-good >actual &&
|
||||||
|
echo good >expected &&
|
||||||
|
test_cmp expected actual &&
|
||||||
|
git bisect terms --term-bad >actual &&
|
||||||
|
echo bad >expected &&
|
||||||
|
test_cmp expected actual
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Loading…
Reference in a new issue