繁体   English   中英

使用 WSL2 和 zsh 自动完成速度慢 git

[英]Slow git autocomplete with WSL2 and zsh

我最近从 git bash 切换到 windows 几乎完全使用 WSL2。

我遇到的问题是我的标签自动完成分支非常慢(在几秒钟内)。 其他自动完成速度很快,例如自动完成 git 命令(git checko[TAB] 会自动完成结帐而不会出现问题)。

我能做些什么来隔离问题或解决它(自动完成不到 1 秒)?

为了自动完成分支,bash 必须解析.git/refs目录或.git/packed-refs文件中的文件,其中存储了分支/标签名称。

如果您的存储库存储在 windows 分区上,这可能是它运行缓慢的原因,因为目前已知 windows/linux 文件系统互操作性很慢。

为了加快分支名称自动完成,您可以将 repo 移动到 linux 分区。 如果这不是一个选项,您可以编写自己的自动完成脚本,以避免 IO 与 windows 文件系统。

git config --global oh-my-zsh.hide-info 1

禁用 oh-my-zsh git 提示魔法。

根本原因是 WSL 使用慢速 9P 协议访问 Windows 驱动器。
参考。 https://stackoverflow.com/a/68974497/135962

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM