我正在尝试查看git-completion.bash
. 如果你运行这个文件,你可以自动完成 git 命令参数。我想写一个非常相似的工具,但是用于另一个命令(即:不是 git)。我试图弄清楚这是如何工作的,以便我可以复制/修改它。我有一个体面的理解:
_git_rebase
当您键入时,会调用类似的函数git rebase <something><TAB>
。我无法弄清楚的是如何_git_rebase
被调用? 我在代码中的任何地方都找不到该函数。我认为这可能与此功能有关,但我不确定。
任何更熟悉 bash 的人都可以向我解释这里发生了什么以及例如如何_git_rebase
被调用吗?为方便起见,这里是源代码:https ://github.com/git/git/blob/master/contrib/completion/git-completion.bash