zsh git 命令自动完成和文件名自动完成一起?

zsh git COMMAND autocomplete and filename autocomplete together?

注意:我知道有很多关于自动完成的问题,但我特别想问一个关于 git 命令自动完成的问题,而不是在目录中列出文件的常规自动完成。

我是 运行 Mac Catalina,我终于决定跳上 zsh 的火车。我想让 git 命令自动完成工作(即我输入 git a 并点击选项卡,出现 addapply 等选项)。

我按照建议将 autoload -Uz compinit && compinit 添加到我的 ~/.zshrc 文件中,瞧,我完成了 git 命令。耶!

但是,一旦我到达 git add 点并尝试使用制表符完成以获取目录中文件的名称,我什么也得不到。 lscp 等的常规制表符补全工作正常,但在添加命令后 git 就不行了。

有没有办法解决这个问题,让命令自动完成和文件自动完成都能正常工作?

应该可以了。您确定在当前目录中有修改或未跟踪的文件吗?我推荐以下配置样式,这样它会告诉你:

zstyle ':completion:*:warnings' format 'No matches for: %d'

git mv 之类的其他事情之后完成是否有效?