From 6b7c45e8c9f7e6b6a602b9ba0727073573da552f Mon Sep 17 00:00:00 2001 From: Roland Hieber Date: Thu, 25 Apr 2024 12:18:44 +0200 Subject: completion: add docs on how to add subcommand completions Signed-off-by: Roland Hieber Signed-off-by: Junio C Hamano --- contrib/completion/git-completion.bash | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index 2cc5997401..43ee14a8ee 100644 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -31,6 +31,13 @@ # Note that "git" is optional --- '!f() { : commit; ...}; f' would complete # just like the 'git commit' command. # +# To add completion for git subcommands that are implemented in external +# scripts, define a function of the form '_git_${subcommand}' while replacing +# all dashes with underscores, and the main git completion will make use of it. +# For example, to add completion for 'git do-stuff' (which could e.g. live +# in /usr/bin/git-do-stuff), name the completion function '_git_do_stuff'. +# See _git_show, _git_bisect etc. below for more examples. +# # If you have a shell command that is not part of git (and is not called as a # git subcommand), but you would still like git-style completion for it, use # __git_complete. For example, to use the same completion as for 'git log' also -- cgit 1.2.3-korg