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

[PATCH v4 4/5] completion: avoid trailing space for --exec-path

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Apr 15, 2012, 19:44 UTC
Message-ID
<1334519060-2348-5-git-send-email-felipe.contreras@gmail.com>
In-Reply-To
<1334519060-2348-1-git-send-email-felipe.contreras@gmail.com>
From: Jonathan Nieder <jrnieder@gmail.com>

--exec-path looks to the completion script like an unambiguous successful completion, but it is wrong; the user could be trying to do

	git --exec-path; # print name of helper directory
or
	git --exec-path=/path/to/alternative/helper/dir <subcommand>

so the most helpful thing to do is to leave out the trailing space and leave it to the operator to type an equal sign or carriage return according to the situation.

Cc: Andreas Schwab <schwab@linux-m68k.org>
Reported-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
[added tests]
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 contrib/completion/git-completion.bash |    1 +
 t/t9902-completion.sh                  |    7 ++++++-
 2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index b837704..6486a09 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -2639,6 +2639,7 @@ _git ()
 			--bare
 			--version
 			--exec-path
+			--exec-path=
 			--html-path
 			--info-path
 			--work-tree=
diff --git a/t/t9902-completion.sh b/t/t9902-completion.sh
index f24c968..dfef809 100755
--- a/t/t9902-completion.sh
+++ b/t/t9902-completion.sh
@@ -94,6 +94,7 @@ test_expect_success 'double dash "git" itself' '
 	--bare Z
 	--version Z
 	--exec-path Z
+	--exec-path=
 	--html-path Z
 	--info-path Z
 	--work-tree=
@@ -122,7 +123,11 @@ test_expect_success 'double dash "git checkout"' '
 test_expect_success 'general options' '
 	test_completion "git --ver" "--version " &&
 	test_completion "git --hel" "--help " &&
-	test_completion "git --exe" "--exec-path " &&
+	sed -e "s/Z$//" >expected <<-\EOF &&
+	--exec-path Z
+	--exec-path=
+	EOF
+	test_completion "git --exe" &&
 	test_completion "git --htm" "--html-path " &&
 	test_completion "git --pag" "--paginate " &&
 	test_completion "git --no-p" "--no-pager " &&
-- 
1.7.10.1.g1f19b8.dirty
Previous: Felipe ContrerasNext: Felipe Contreras
Message 5 of 7 in “completion: trivial cleanups and fixes”
  1. 0/5 completion: trivial cleanups and fixesFelipe Contreras, Apr 15, 2012
  2. 1/5 completion: simplify __gitcomp_1Felipe Contreras, Apr 15, 2012
  3. 2/5 completion: simplify by using $prevFelipe Contreras, Apr 15, 2012
  4. 3/5 completion: add missing general optionsFelipe Contreras, Apr 15, 2012
  5. 4/5 completion: avoid trailing space for --exec-pathFelipe Contreras, Apr 15, 2012
  6. 5/5 completion: fix completion after 'git --option <TAB>'Felipe Contreras, Apr 15, 2012
  7. Junio C HamanoApr 15, 2012

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.