我有一个 Git 别名update
,我想为它配备分支名称完成功能。别名定义如下:
[alias]
update = "!f() { git push . origin/$1:$1; }; f"
(它使用其上游版本更新本地跟踪分支,而无需签出分支。不过,对于特定问题并不重要。)
我希望该命令对其$1
参数的现有分支名称进行制表符补全。我知道我可以定义一个调用_git-update
来控制完成的函数,但我缺少一些让它工作的部分:
_git-update ()
{
***some-function-here*** "$(__git_branch_names)"
}
我正在使用安装在 OS X 上的补brew install zsh-completions
全,它是在https://github.com/zsh-users/zsh-completions上设置的。
(这个问题直接类似于https://stackoverflow.com/a/41307951/169947,但适用于 Zsh 而不是 Bash。)