Windows 终端 + oh-my-posh 不显示 git 状态

问题描述

我已经在我的 Windows 终端中安装了 oh-my-posh 和 posh-git,但是它没有跟踪任何 git 更改,如图所示。不管我做了什么改变,它只是显示如下,没有状态:

enter image description here

我也尝试过不使用 posh-git,因为我认为 oh-my-posh 认具有此功能,但结果仍然相同。

这是我的 oh-my-posh 主题

{
  "$schema": "https://raw.githubusercontent.com/JanDedobbeleer/oh-my-posh/main/themes/schema.json","blocks": [
    {
      "alignment": "left","segments": [
        {
          "background": "#91ddff","foreground": "#100e23","powerline_symbol": "","properties": {
            "folder_icon": "","folder_separator_icon": "  ","home_icon": "","style": "agnoster"
          },"style": "powerline","type": "path"
        },{
          "background": "#95ffa4","foreground": "#193549","type": "git"
        },{
          "background": "#906cff","properties": {
            "prefix": "  "
          },"type": "python"
        },{
          "background": "#ff8080","foreground": "#ffffff","type": "exit"
        }
      ],"type": "prompt"
    }
  ],"final_space": true
}

解决方法

在这里找到答案:https://ohmyposh.dev/docs/git/。 显然,默认情况下 git status 是禁用的,因此您需要在 git 配置中添加一个属性部分:

{
  "type": "git","style": "powerline","powerline_symbol": "\uE0B0","foreground": "#193549","background": "#ffeb3b","properties": {
    "display_status": true,"display_stash_count": true,"display_upstream_icon": true
  }
}

也可以使用 posh-git:

{
  "type": "poshgit","foreground": "#ffffff","background": "#0077c2"
}