终端中的 cd 命令执行时间过长

终端中的 cd 命令执行时间过长

当我尝试使用 cd 命令浏览目录时,它花费了太长时间。终端建议创建一个配置文件来增加超时时间。一旦我的终端挂起,我的意思是当我尝试执行命令时,光标一直在闪烁但什么也没发生,甚至 ctrl+c 也不起作用,我不得不重新启动。但终端仍然很慢。我观察到这个延迟问题只发生在 cd 命令上。

~ on ☁️  (us-east-2) 
❯ cd Cloud/
[WARN] - (starship::utils): Executing command "/usr/bin/git" timed out.
[WARN] - (starship::utils): You can set command_timeout in your config to a higher value to allow longer-running commands to keep executing.

Cloud on  main on ☁️  (us-east-2) 

答案1

信息很明确,你只需要设置一个暂停

在里面~/.config/starship.toml(如果不存在则创建它),您可以像这样设置超时:

command_timeout = 10000

然后更新或者重新安装星舰:

sh -c "$(curl -fsSL https://starship.rs/install.sh)"

答案2

我遇到了同样的问题。使用此命令,starship config command_timeout 1000帮助我解决了该问题。

来源:https://github.com/starship/starship/discussions/4181#discussioncomment-3170845

答案3

Starship 执行不同的命令以获取提示中显示的信息,例如程序的版本或当前的 git 状态。为了确保 starship 在尝试执行这些命令时不会挂起,我们设置了一个时间限制,如果命令花费的时间超过此限制,starship 将停止执行该命令并输出上述警告,这是预期行为。

此时间限制可使用 command_timeoutkey 进行配置,因此如果您愿意,可以增加时间限制。您还可以按照下面的调试步骤查看哪个命令运行缓慢,并查看是否可以对其进行优化。最后,您可以设置STARSHIP_LOG环境变量来error隐藏这些警告。

该问题发生在非常大的 git 存储库中,如果存储库太大,您无法承受超时,您可以使用以下命令跳过警告:

在你的~/.config/starship.toml

# Set whatever time out in ms
command_timeout = 500

在你的~/.zshrc

# Launch Starship theme
export STARSHIP_LOG="error"
eval "$(starship init zsh)"

答案4

我在 Mac 上,我通过使用 Homebrew 重新安装 xcode 解决了这个问题。我运行了以下命令

brew install xcode

它解决了我的问题。

相关内容