Subject: [PATCH] branch: Remove unnecessary verbose flag

From: K Jayatheerth <[email-masked]>
Date: Fri, 26 Dec 2025 08:58:04 +0530

The --show-current option doesn't know how to handle verbose
logic. In such a case, we want the program to die when both flags
are used together.

Signed-off-by: K Jayatheerth <[email-masked]>
---
 builtin/branch.c  | 2 ++
 t/t3200-branch.sh | 4 ++++
 2 files changed, 6 insertions(+)

diff --git a/builtin/branch.c b/builtin/branch.c
index c577b5d20f..433c213dc0 100644
--- a/builtin/branch.c
+++ b/builtin/branch.c
@@ -860,6 +860,8 @@ int cmd_branch(int argc,
 		ret = delete_branches(argc, argv, delete > 1, filter.kind, quiet);
 		goto out;
 	} else if (show_current) {
+		if (filter.verbose)
+			die(_("options '%s' and '%s' cannot be used together"), "--show-current", "-v");
 		print_current_branch_name();
 		ret = 0;
 		goto out;
diff --git a/t/t3200-branch.sh b/t/t3200-branch.sh
index c58e505c43..5bb49de9c2 100755
--- a/t/t3200-branch.sh
+++ b/t/t3200-branch.sh
@@ -1716,4 +1716,8 @@ test_expect_success 'errors if given a bad branch name' '
 	test_cmp expect actual
 '
 
+test_expect_success 'git branch --show-current rejects -v' '
+	test_must_fail git branch --show-current -v
+'
+
 test_done
-- 
2.52.0