带有 git 的 oh-my-zsh 不会将提示中的 git 横幅更新为绿色,即使 git 状态是最新的

oh-my-zsh with git does not update the git banner in the prompt to green even when git status is up to date

我有一个本地文件夹曾被错误地推送到 git。我修复了它(git-忽略了它,从远程删除了它,git 拉了它,等等)让它们恢复同步。

但是,oh-my-zsh(带有 powerlevel10k 主题)不会将提示的 git 横幅改回绿色。

我已尝试重新启动 iterm、重新加载 zshrc、删除 git 插件并将其添加回 zshrc,但是 none 有效。

屏幕截图显示 git 状态是干净的,但提示仍然显示 git 状态为黄色而不是绿色。

首先尝试再次克隆您的存储库,以检查问题是否仍然存在(如果新文件夹中的 zsh 提示仍然不正确)。

issue 559,您可以看到是什么产生了黄色片段:

  if $(git rev-parse --is-inside-work-tree >/dev/null 2>&1); then
    repo_path=$(git rev-parse --git-dir 2>/dev/null)
    dirty=$(parse_git_dirty)
    ref=$(git symbolic-ref HEAD 2> /dev/null) || ref="➦ $(git rev-parse --short HEAD 2> /dev/null)"
    if [[ -n $dirty ]]; then
      prompt_segment yellow black
    else
      prompt_segment green $CURRENT_FG
    fi

(有parse_git_dirty here)