作为对这个问题的跟进,我问自己是否可以告诉 git 为进一步的命令提供它的自动完成功能(分支等),特别是管道命令,如update-ref
.
尽管update-ref
提供了比 更多的灵活性branch -f
,但使用起来相当麻烦,因为您总是必须输入完整的参考名称。这反过来又不会让我想使用它。
对此有什么想法吗?
作为对这个问题的跟进,我问自己是否可以告诉 git 为进一步的命令提供它的自动完成功能(分支等),特别是管道命令,如update-ref
.
尽管update-ref
提供了比 更多的灵活性branch -f
,但使用起来相当麻烦,因为您总是必须输入完整的参考名称。这反过来又不会让我想使用它。
对此有什么想法吗?
可以启用管道命令,但您需要自己提供一些实现。
找到git-completion.sh
您正在使用的脚本。
在我的/users/andrewc/.bashrc
我有
# GIT STUFF
if [ -f ~/.git-completion.bash ]
then
. ~/.git-completion.bash
fi
所以我拉起/users/andrewc/git-completion.bash
找到函数__git_list_porcelain_command())
并注释掉 update-ref
#update-ref) : plumbing;;
这将允许update-ref
自己自动完成。该脚本不知道如何填写任何参数update-ref
。看起来您需要提供一个实现__git_update_ref
来实现这一点。我会使用类似的命令(可能是`__git_branch)作为模板并从那里开始。