You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code Python扩展注入错误oh-my-posh变量致Git Bash主题异常

问题解答:VS Code集成终端中Git Bash的oh-my-posh主题在Poetry项目下失效

1. 问题根源

核心问题出在VS Code的Python扩展:当启用Shell集成功能并打开Poetry管理的Python项目时,扩展在注入虚拟环境相关变量的过程中,误将Git Bash识别为PowerShell(pwsh),导致注入了针对pwsh的oh-my-posh配置路径,让Git Bash加载了错误的旧主题文件,最终触发CONFIG ERROR。

  • Poetry是触发问题的场景(仅在Poetry项目中出现),但并非根源;
  • oh-my-posh本身是按环境变量加载配置,逻辑无问题。

2. 保留Shell集成功能的修复方案

以下是几种优先级从高到低的可行方案:

方案1:在Git Bash配置中强制指定主题路径

编辑Git Bash的初始化文件(通常是~/.bashrc或~/.bash_profile),将oh-my-posh的初始化命令改为直接指定配置文件路径,彻底规避环境变量被篡改的问题:

eval "$(oh-my-posh init bash --config /full/path/to/your/theme.omp.json)"

替换/full/path/to/your/theme.omp.json为你实际的主题文件路径(注意用正斜杠/)。

方案2:在VS Code中为Git Bash单独配置环境变量

打开VS Code的settings.json,为Git Bash终端添加专属环境变量,覆盖错误的POSH_THEME值:

"terminal.integrated.profiles.windows": {
    "Git Bash": {
        "source": "Git Bash",
        "env": {
            "POSH_THEME": "C:/full/path/to/your/theme.omp.json"
        }
    }
}

方案3:调整Python扩展的终端激活策略(仅适合不需要自动激活虚拟环境的场景)

如果不需要在集成终端中自动激活Poetry虚拟环境,可以在settings.json中添加:

"python.terminal.activateEnvironment": false

内容的提问来源于stack exchange,提问作者Buzz B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 16:44:57