最稳方式是为每个文档版本单独创建.code-workspace文件并用workspaces: open recent精准唤出;双击打开或右键置顶可确保恢复全部上下文,拖拽或ctrl+r易混淆路径导致多根误叠加。

直接用 .code-workspace 文件固化多个文档目录,再配合 Workspaces: Open Recent 快速唤出——这是唯一能保留文件打开状态、搜索索引和终端上下文的离线方案。插件或快捷键切换单文件夹,本质是反复关闭重开,会丢掉所有临时编辑状态。
为什么不能靠 Ctrl+R 或拖拽切换文档版本?
VSCode 的 Ctrl+R(或 Cmd+R)调用的是 Workspaces: Open Recent 命令,但它只记录「最后打开过的路径」,不区分版本。如果你把 v1.2-docs、v1.3-docs、draft-docs 都当作普通文件夹打开过,列表里混在一起,靠肉眼识别路径极易点错;更关键的是,拖拽一个文档文件夹进已打开窗口,VSCode 默认提示“是否添加到当前工作区”,不是替换——你本想切到新版,结果变成多根并存,资源管理器里堆了三个同名子目录,反而更难定位。
创建带版本标识的 .code-workspace 文件
每个文档版本应独立封装为一个 .code-workspace 文件,而非共享同一个工作区。这样能避免设置冲突、排除规则误生效,也方便后续打包分发。
- 清空当前窗口:确保状态栏不显示任何路径或
[Workspace] - 按
Ctrl+Shift+P(macOS 为Cmd+Shift+P),输入Workspaces: Create Workspace回车 - 在弹出的文件选择器中,**只选中一个文档根目录**(如
./docs-v2.1),不要多选 - 保存为
docs-v2.1.code-workspace,路径用相对路径(如"path": "./docs-v2.1"),禁用绝对路径 - 重复以上步骤,为
v2.0、rc、legacy各建一个独立文件
快速唤出指定版本的三个可靠方式
避免依赖模糊搜索或记忆路径,用可复现的操作锁定目标版本:
-
双击打开:文件管理器中直接双击
docs-v2.1.code-workspace,VSCode 会完整恢复该版本下所有已开文件、终端、调试配置(如果有的话) -
命令面板精准触发:按
Ctrl+Shift+P→ 输入Workspaces: Open Recent→ 列表中悬停看完整路径,确认是docs-v2.1.code-workspace再回车 -
右键置顶防刷屏:在
Open Recent列表中右键某版本 →Pin to Top,把它钉在第一位,避免被新打开的临时文件夹挤掉
容易被忽略的离线细节
文档项目通常不含 package.json 或 launch.json,但 VSCode 仍会基于工作区根做路径解析。若你发现 Ctrl+P 模糊搜索找不到刚打开的 README.md,大概率是因为没用 File → Open Folder 加载,而是用 File → Open File… 单独打开了它——此时该文件不在工作区索引范围内,也不会出现在搜索结果里。另外,检查 files.exclude 是否误配了 "**/node_modules/**": true 这类通配,它可能连带屏蔽了 **/assets/** 下的文档图片资源。











