我已经通过编写位于/ usr / local / bin中的shell脚本实现了自定义git命令。它工作正常,但我希望脚本在命令行中自动完成分支,就像“git checkout [TAB] [TAB]”。怎么可以这样做?
编辑:
只需添加一些上下文:git允许您通过创建脚本git-$subcommandName
非常轻松地添加自己的命令。在我的案例git-install
中,该脚本便于检查分支,构建,打包和安装源代码。
答案 0 :(得分:8)
想出来。我需要下载git bash completion(here),在/etc/bash_completion.d
中创建一个包含以下内容的新文件:
source ~/.git-completion.bash
_git_install ()
{
__gitcomp_nl "$(__git_refs)"
}
然后exec bash
重新加载完成脚本。