[PATCH 2/3] rev-parse: fix using "--default" with "--verify"
From: Christian Couder <hidden>
Date: 2016-06-15 22:44:35
Subsystem:
the rest · Maintainer:
Linus Torvalds
Before this patch, something like: $ git rev-parse --verify HEAD --default master did not work, while: $ git rev-parse --default master --verify HEAD worked. This patch fixes that, so that they both work (assuming HEAD and master can be parsed). Signed-off-by: Christian Couder <redacted> --- builtin-rev-parse.c | 2 ++ t/t1503-rev-parse-verify.sh | 11 +++++------ 2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/builtin-rev-parse.c b/builtin-rev-parse.c
index 0e59707..7dbf282 100644
--- a/builtin-rev-parse.c
+++ b/builtin-rev-parse.c@@ -583,6 +583,8 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; verify_filename(prefix, arg); } + if (verify && revs_count == 1) + return 0; show_default(); if (verify && revs_count != 1) die_no_single_rev(quiet);
diff --git a/t/t1503-rev-parse-verify.sh b/t/t1503-rev-parse-verify.sh
index a0d14cb..e93f1b3 100755
--- a/t/t1503-rev-parse-verify.sh
+++ b/t/t1503-rev-parse-verify.sh@@ -97,18 +97,17 @@ test_expect_failure '3 no stdout output on error' ' test -z "$(git rev-parse --verify $HASH2 HEAD)" ' -test_expect_success '1 with --default' ' +test_expect_success 'use --default' ' git rev-parse --verify --default master && git rev-parse --verify --default master HEAD && git rev-parse --default master --verify && git rev-parse --default master --verify HEAD && + git rev-parse --verify HEAD --default master && test_must_fail git rev-parse --verify foo --default master && test_must_fail git rev-parse --default HEAD --verify bar && - test_must_fail git rev-parse --verify --default HEAD baz -' - -test_expect_failure '2 with --default' ' - git rev-parse --verify HEAD --default master + test_must_fail git rev-parse --verify --default HEAD baz && + test_must_fail git rev-parse --default foo --verify && + test_must_fail git rev-parse --verify --default bar ' test_done
--
1.5.5.1.347.g86562