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

VS Code是否支持monorepo下多子文件夹分别配置独立Python虚拟环境

VS Code多Python虚拟环境(monorepo场景)配置方案

VS Code原生支持处理monorepo子文件夹下的多个venv,无需使用冗余的多文件夹工作区配置,以下是两种更合理的实现方案:

方案1:直接打开仓库根目录作为工作区(推荐)

该方案不会出现重复目录结构,同时支持根目录文件修改和子项目venv自动识别:

  1. 关闭现有工作区,直接选择myRepo文件夹作为VS Code打开的根目录
  2. 在根目录新建.vscode/settings.json文件,添加如下配置:
{
    // 配置venv搜索路径,Windows系统下将冒号替换为分号
    "python.venvPath": "${workspaceFolder}/project_1:${workspaceFolder}/project_2",
    // 开启终端自动激活对应虚拟环境
    "python.terminal.activateEnvironment": true,
    // 可选:开启解释器记忆功能,自动匹配当前打开文件所属项目的venv
    "python.experiments.optInto": ["pythonTerminalEnvVarActivation"]
}
  1. (可选)为每个子项目配置默认解释器,免去手动切换步骤:
    在project_1下新建.vscode/settings.json:
{
    // Windows系统路径替换为${workspaceFolder}/.venv/Scripts/python.exe
    "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python"
}

project_2同理修改对应路径即可。

配置完成后,打开对应项目的Python文件时,VS Code会自动识别并激活对应的虚拟环境,也可以点击右下角的解释器版本号手动切换。

方案2:保留多文件夹工作区,去除重复目录

如果习惯使用多文件夹工作区的管理方式,可以修改工作区配置文件,隐藏根目录下的子项目文件夹,避免结构冗余:
打开你的工作区.code-workspace配置文件,修改为如下内容:

{
    "folders": [
        {
            "path": "./myRepo",
            "name": "仓库根目录",
            // 隐藏根目录下的子项目,避免重复展示
            "folder_exclude_patterns": ["project_1", "project_2"]
        },
        {
            "path": "./myRepo/project_1",
            "name": "项目1"
        },
        {
            "path": "./myRepo/project_2",
            "name": "项目2"
        }
    ]
}

修改后资源管理器只会展示根目录的顶层文件、以及独立的两个子项目文件夹,不会出现重复目录结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 14:24:07