From: Christian Couder <chriscool@tuxfamily.org>
To: Junio Hamano <junkio@cox.net>, Ingo Molnar <mingo@elte.hu>
Cc: git@vger.kernel.org
Subject: [PATCH] bisect: print an error message when "git rev-list --bisect-vars" fails
Date: Wed, 7 May 2008 23:54:28 +0200 [thread overview]
Message-ID: <20080507235428.a3579911.chriscool@tuxfamily.org> (raw)
Before this patch no error was printed when "git rev-list --bisect-vars"
failed. This can happen when bad and good revs are mistaken.
This patch prints an error message on stderr that describe the likely
failure cause.
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
git-bisect.sh | 19 +++++++++++++++++--
t/t6030-bisect-porcelain.sh | 7 +++++++
2 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/git-bisect.sh b/git-bisect.sh
index b5171c9..164e8ed 100755
--- a/git-bisect.sh
+++ b/git-bisect.sh
@@ -224,18 +224,33 @@ bisect_auto_next() {
bisect_next_check && bisect_next || :
}
+eval_rev_list() {
+ _eval="$1"
+
+ eval $_eval
+ res=$?
+
+ if [ $res -ne 0 ]; then
+ echo >&2 "'git rev-list --bisect-vars' failed:"
+ echo >&2 "maybe you mistake good and bad revs?"
+ exit $res
+ fi
+
+ return $res
+}
+
filter_skipped() {
_eval="$1"
_skip="$2"
if [ -z "$_skip" ]; then
- eval $_eval
+ eval_rev_list "$_eval"
return
fi
# Let's parse the output of:
# "git rev-list --bisect-vars --bisect-all ..."
- eval $_eval | while read hash line
+ eval_rev_list "$_eval" | while read hash line
do
case "$VARS,$FOUND,$TRIED,$hash" in
# We display some vars.
diff --git a/t/t6030-bisect-porcelain.sh b/t/t6030-bisect-porcelain.sh
index ccd459b..b5102fb 100755
--- a/t/t6030-bisect-porcelain.sh
+++ b/t/t6030-bisect-porcelain.sh
@@ -302,6 +302,13 @@ test_expect_success 'bisect refuses to start if branch new-bisect exists' '
git branch -d new-bisect
'
+test_expect_success 'bisect errors out if bad and good are mistaken' '
+ git bisect reset &&
+ test_must_fail git bisect start $HASH2 $HASH4 2> rev_list_error &&
+ grep "mistake good and bad" rev_list_error &&
+ git bisect reset
+'
+
#
#
test_done
--
1.5.5.1.322.g312d.dirty
reply other threads:[~2008-05-07 21:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080507235428.a3579911.chriscool@tuxfamily.org \
--to=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=junkio@cox.net \
--cc=mingo@elte.hu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).