git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 2/3] rev-parse: fix using "--default" with "--verify"

From
Christian Couder <chriscool@tuxfamily.org>
Date
May 11, 2008, 16:27 UTC
Message-ID
<20080511182736.b279b655.chriscool@tuxfamily.org>
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 <chriscool@tuxfamily.org>
---
 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
Message 1 of 1 in “rev-parse: fix using "--default" with "--verify"”
  1. 2/3 rev-parse: fix using "--default" with "--verify"Christian Couder, May 11, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.