VS Code 工作区显示已删除文件夹是因缓存未清理或 .code-workspace 配置残留;需完全退出后删除 ~/.vscode/workspaceStorage/ 对应哈希目录,或手动编辑 .code-workspace 文件移除失效路径。

VS Code 里文件夹被移除后工作区还显示空目录
这是 VS Code 的工作区缓存行为导致的——它没删掉 .vscode/workspaceStorage 里的元数据,只是断开了和磁盘路径的关联。你看到的“空文件夹”其实是残留的 workspace state,不是真有文件。
实操建议:
- 关掉 VS Code(必须完全退出,macOS 注意右上角菜单栏图标也要退出)
- 删掉对应工作区的缓存目录:
~/.vscode/extensions/ms-vscode.vscode-typescript-next-*/这类不用管;重点是~/.vscode/workspaceStorage/下按哈希名命名的子目录,找最近修改时间匹配你移除操作的那个删掉 - 重启 VS Code,再打开文件夹时会重建干净 workspace state
用命令行重新添加已删除但路径还在的文件夹
如果你只是在资源管理器里删了文件夹,但磁盘上其实还存在(比如误拖进回收站还没清空),或者你刚用 rm -rf 或 del 删除完又后悔了,别急着重装项目——VS Code 本身不管理文件,只读取路径。
实操建议:
- 先确认路径是否真不可达:终端执行
ls /path/to/folder(macOS/Linux)或dir C:\path\to\folder(Windows),如果报 “No such file”,说明真没了 - 如果路径还在(比如只是从侧边栏拖出去),直接拖回 VS Code 侧边栏,或点「文件 → 打开文件夹」选中即可
- 如果路径已不存在,但你有备份或 Git 历史,优先从
git checkout或备份恢复,而不是靠 VS Code 挽救
误删后发现 settings.json 或 tasks.json 也丢了
这些文件默认存在项目根目录下的 .vscode/ 子目录里。一旦整个文件夹被删,它们就随项目一起消失——VS Code 不会自动备份用户配置。
实操建议:
-
.vscode/settings.json如果你之前同步过 Settings Sync(GitHub/GitLab 登录),重启后登录账户可能自动恢复部分设置 - 检查系统回收站/废纸篓,特别是 Windows 上用
Shift + Delete以外的操作,文件大概率还在那里 - 没有备份的话,
tasks.json和launch.json只能重写;常用模板可从 VS Code 官方文档搜tasks.json example快速复原 - 今后把
.vscode/加进 Git:它不是临时文件,而是项目级开发配置,值得版本化
为什么关掉再打开还是看到旧文件夹名?
这不是 VS Code 记忆错乱,而是你打开了一个含多根工作区的 .code-workspace 文件,而该文件里仍保留着已失效的 "folders" 条目。
实操建议:
- 用文本编辑器打开那个
.code-workspace文件,手动删掉对应路径的整个对象,例如:{"folders": [{"path": "/old/deleted/path"}]}→ 改成{"folders": []} - 保存后重新用 VS Code 打开这个
.code-workspace文件,旧名字就不会再出现 - 注意:不要用「文件 → 添加文件夹到工作区」反复加已失效路径,这会让
.code-workspace越来越臃肿
.code-workspace 文件的手动编辑,以及 workspaceStorage 目录的清理时机——必须在关闭 VS Code 后操作,否则改了也白改。









