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

[PATCH v3 3/3] completion: add docs on how to add subcommand completions

From
Roland Hieber <rhi@pengutronix.de>
Date
Apr 25, 2024, 10:18 UTC
Message-ID
<20240425101845.708554-3-rhi@pengutronix.de>
In-Reply-To
<20240425101845.708554-1-rhi@pengutronix.de>
Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
PATCH v3:
 - change the wording a bit to make the text more fluent
PATCH v2: https://lore.kernel.org/git/20240424215019.268208-2-rhi@pengutronix.de
 - fix typo and superfluous "-my" (thanks to Junio C Hamano)
PATCH v1: https://lore.kernel.org/git/20240424210549.256256-2-rhi@pengutronix.de/
---
 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 566f32d412ce..5c0ddeb3d4fb 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
-- 
2.39.2
Previous: Roland HieberNext: Kristoffer Haugsbakk
Message 3 of 10 in “completion: add 'symbolic-ref'”
  1. 1/3 completion: add 'symbolic-ref'Roland Hieber, Apr 25, 2024
  2. 2/3 completion: improve docs for using __git_completeRoland Hieber, Apr 25, 2024
  3. 3/3 completion: add docs on how to add subcommand completionsRoland Hieber, Apr 25, 2024
  4. Kristoffer HaugsbakkApr 25, 2024
  5. Justin ToblerApr 25, 2024
  6. Junio C HamanoApr 25, 2024
  7. Justin ToblerApr 25, 2024
  8. Junio C HamanoApr 25, 2024
  9. Junio C HamanoApr 25, 2024
  10. Patrick SteinhardtApr 26, 2024

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.