登录
推荐 文章 Go 技术 课程 下载 专题 AI
首页 >  文章 >  软件教程

VS Code 多根工作区如何让不同项目使用各自设置

来源:17golang原创

时间:2026-09-14 09:58:15 423浏览 收藏

如果你同时维护前端、后端和文档项目,最稳妥的做法不是把所有配置塞进用户设置,而是保存一个 VS Code 多根工作区:项目之间共用的设置放在 .code-workspace 文件中,某个项目独有的排除规则、缩进或搜索设置放在该项目自己的 .vscode/settings.json

官方地址:https://code.visualstudio.com/

一句话记忆:工作区设置负责“大家都一样”,文件夹设置负责“这个根目录单独处理”。

先把多个项目保存成一个工作区

打开 VS Code 后,先打开其中一个项目,再选择菜单 File > Add Folder to Workspace,依次加入其他项目。资源管理器会把它们显示成多个根目录;如果只是临时组合,关闭窗口前也可以不保存。

需要长期使用时选择 File > Save Workspace As,保存为例如 team-workspace.code-workspace。这个文件是以后重新进入多根工作区的入口,里面的相对路径也方便团队成员在不同电脑上打开同一套目录结构。

VS Code 多根工作区显示前端、服务端和文档三个根目录并打开保存工作区菜单的操作示意图
图1:把多个项目加入同一窗口并保存为 .code-workspace 的操作示意图。

把所有项目共用的设置写进 .code-workspace

保存后,在命令面板执行 Preferences: Open Workspace Settings (JSON),或者在设置编辑器切换到 Workspace 作用域。适合放进去的是所有根目录都需要的规则,例如统一自动保存:

{
  "folders": [
    { "name": "Web", "path": "web" },
    { "name": "API", "path": "api" },
    { "name": "Docs", "path": "docs" }
  ],
  "settings": {
    // 让工作区内所有项目使用同一套自动保存策略
    "files.autoSave": "afterDelay",
    // 统一隐藏依赖目录,避免搜索结果过于嘈杂
    "search.exclude": {
      "**/node_modules": true
    }
  }
}

这里的 settings 是工作区级设置,不是某一个项目的设置。用户设置仍然对所有 VS Code 窗口生效,而工作区设置会覆盖用户设置。

给每个根目录配置自己的设置

如果只有 API 项目需要两格缩进,或者 Docs 项目不想隐藏图片目录,就不要把规则写到工作区的 settings 中。分别在对应根目录下创建 .vscode/settings.json

{
  // 只影响当前根目录,不改变 Web 和 Docs 的缩进
  "editor.tabSize": 2,
  "files.exclude": {
    // 只在当前项目的资源管理器中隐藏构建产物
    "dist": true,
    "tmp": true
  }
}

多根工作区的设置编辑器会出现 WorkspaceFolder 等作用域。先选中目标根目录,再打开 Folder Settings,能减少把配置误写到整个工作区的机会。官方文档特别说明:文件夹级设置主要适用于资源相关配置,影响整个编辑器窗口的设置不一定支持逐根目录覆盖。

VS Code 设置编辑器显示 Workspace 与 Folder 作用域以及当前根目录隐藏 dist 的结果示意图
图2:在当前根目录的 Folder Settings 中查看独有规则并确认资源管理器结果的示意图。

用三个可见状态确认层级没有写错

  1. 看资源管理器:切换到目标根目录,确认该目录下的 disttmp 是否按预期隐藏。
  2. 看设置作用域:在设置搜索框输入 @modified,确认当前显示的是 Workspace 还是 Folder。
  3. 重新打开入口:关闭窗口后双击 team-workspace.code-workspace,检查多个根目录和设置是否恢复。

如果另一个项目也出现了不该有的规则,通常是配置写进了工作区的 settings,或当前编辑的是错误根目录下的 .vscode/settings.json。先检查文件位置,再决定是否移动配置,不要急着改用户设置。

常见问题

为什么一个项目的设置没有覆盖另一个项目?

因为文件夹设置只作用于它所属的根目录,而且只有支持文件夹作用域的设置才会生效;窗口级 UI 设置不能简单地为每个根目录各设一份。

多根工作区一定要保存吗?

不一定。临时工作区可以不保存,但关闭窗口后不方便交给同事或再次打开。需要稳定复用时保存 .code-workspace,并尽量使用相对路径。

最终确认:共用规则放在 .code-workspacesettings,项目差异放在各根目录的 .vscode/settings.json;重新打开工作区后,资源管理器和设置作用域都符合预期,就完成了这次配置。

声明:本文转载于:17golang原创 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>