13

我有一个用于 git 的自定义别名git df(它基本上是 git 的快捷方式git diff)。

但是,使用 git 的 zsh 自动更正功能,每次我git df在包含db目录的目录中使用时,都会得到以下信息:

% ls
app/ config/ db/ lib/ log/ spec/

% git alias | grep "df"
df = diff

% git df
zsh: correct 'df' to 'db' [nyae]?

有没有办法让 zsh 知道我的 git 别名,以便在尝试自动更正我的命令时将它们考虑在内?我希望它检测到git df存在而不是建议我git db

我不想创建 zsh 别名(例如alias gdf="git diff")或使用alias git="nocorrect git".

谢谢你的帮助!

4

3 回答 3

3

您可以通过运行命令hash -rfrehash. 当 zsh 自动更正错误的东西时,这解决了我的问题。

于 2012-07-30T22:33:33.687 回答
3

Git 有一个自动更正功能:

git config --global help.autocorrect 

在自动更正之前将等待 2 秒:

git config --global help.autocorrect 2 

我认为如果你想在 zsh 中实现这个功能,你将不得不直接更改 git 完成功能。

于 2013-03-08T08:28:10.893 回答
1

有时,我发现自动更正有点烦人。所以我在我的 ~/.zshrc 中做,

DISABLE_CORRECTION="true"

这将禁用自动更正功能。否则,你可以做

alias git="nocorrect git" 

但你似乎对此很反感

于 2013-08-16T16:22:26.027 回答