Skip to content

Commit dc8a00f

Browse files
committed
completion: clarify support for short options and arguments
The list of supported completions in the header of the file was mostly written a long time ago when Shawn added the initial version of this script in 2006. The list explicitly states that we complete "common --long-options", which implies that we do not complete not-so-common ones and single letter options (this text dates back to May 2007). Update the description to explicitly state that single-letter options are not completed. Also, document that arguments to options are completed, even for single-letter options (e.g., "git -c <TAB>" offers configuration variables). The reason why we do not complete single-letter options is because it does not seem to help all that much to learn that the command takes -c, -d, -e options when "git foo -<TAB>" offers these three, unlike long options that is easier to guess what they are about. Because this rationale is primarily for our developers, let's leave it out of the completion script itself, whose messages are entirely for end-users. Our developers can run "git blame" to find this commit as needed. Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 9a2fb14 commit dc8a00f

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

contrib/completion/git-completion.bash

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
# *) git email aliases for git-send-email
1414
# *) tree paths within 'ref:path/to/file' expressions
1515
# *) file paths within current working directory and index
16-
# *) common --long-options
16+
# *) common --long-options but not single-letter options
17+
# *) arguments to long and single-letter options
1718
#
1819
# To use these routines:
1920
#

0 commit comments

Comments
 (0)