VS Code 通过 .code-workspace 文件实现多项目工作区管理:可添加多个文件夹、共享搜索与调试配置,需区分项目级与工作区级设置,推荐使用相对路径并避免绝对路径硬编码。

VS Code 本身不提供传统 IDE 那种“多项目工作区”的内置概念,但通过 workspace(工作区)机制,完全可以高效管理多个项目——关键不是打开多个窗口,而是用好 .code-workspace 文件。
用 File > Add Folder to Workspace… 合并多个项目目录
这是最直接、最常用的方式:启动 VS Code 后,先打开一个项目文件夹,再通过菜单添加其他独立项目目录。所有路径会汇总到当前工作区,资源管理器里显示为并列根节点。
- 每个添加的文件夹保持自身
.vscode/settings.json和tasks.json独立生效 - 搜索(
Ctrl+Shift+F)默认跨所有已添加文件夹,可右上角点击文件夹图标缩小范围 - 调试配置(
launch.json)需在.vscode/下统一维护,不同项目建议用configurations数组区分,并设置cwd和program路径指向对应项目 - 注意:如果两个项目有同名文件(比如都叫
index.ts),标签页标题仅显示文件名,容易混淆——建议开启设置"workbench.editor.labelFormat": "short"改为"medium"或"long"显示相对路径
保存为 .code-workspace 文件复用配置
临时合并的文件夹不会自动保存。必须手动执行 File > Save Workspace As…,生成一个 JSON 格式的 .code-workspace 文件。这才是真正可共享、可版本控制的多项目入口。
- 该文件本质是 JSON,可手写编辑,支持
folders(路径列表)、settings(覆盖全局设置)、extensions(推荐扩展)、launch和tasks(调试与任务)等字段 - 路径支持相对写法(如
"./backend"),但只相对于 workspace 文件所在目录;绝对路径(如"path": "/Users/me/project/frontend")更稳妥,尤其跨机器时 - 不要把
.code-workspace提交到公共仓库时硬编码本地绝对路径;团队协作建议用相对路径 + 统一目录结构约定
避免误用「多窗口」代替「多文件夹工作区」
新手常为每个项目开一个 VS Code 窗口,看似简单,实则丢失协同能力:无法跨项目搜索、跳转、统一调试、共享终端标签页,且内存占用翻倍。
- 关闭多余窗口前,先确认是否真需要隔离——比如前端和后端项目共用一套 API 类型定义,放同一工作区才能享受 TypeScript 的跨文件夹类型推导
- 若确实需隔离(如生产环境 vs 开发环境配置冲突),可用 VS Code 的「多用户数据目录」机制:
code --user-data-dir=/tmp/vscode-prod启动独立实例,但这是重量级方案,日常不推荐 - 快捷键
Ctrl+K Ctrl+O(Windows/Linux)或Cmd+K Cmd+O(macOS)可快速打开已有.code-workspace文件,比反复找文件夹快得多
真正麻烦的不是怎么加文件夹,而是搞清哪些配置该放在工作区级、哪些该留在项目级;还有路径引用一旦写死,换电脑就打不开——这些细节比操作步骤更容易拖慢节奏。









