[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