重装前必须备份的四个核心目录是:%appdata%\code、%userprofile%.vscode\extensions、%userprofile%.ssh、%appdata%\code\user\workspacestorage,它们分别保存用户配置与缓存、插件本体、ssh密钥及工作区索引数据。

重装前必须备份的四个核心目录
VSCode重装系统前只备份 settings.json 是远远不够的,真正容易丢失且难以重建的是缓存类数据。以下四个目录必须手动复制(不是导出、不是同步):
-
%APPDATA%\Code:含用户配置、快捷键、代码片段、全局状态(state.vscdb)、插件缓存和语言服务器临时文件 -
%USERPROFILE%\.vscode\extensions:所有已安装插件本体,Python/Java等扩展动辄几百MB,重装后重新下载极慢 -
%USERPROFILE%\.ssh:SSH密钥(id_rsa)、主机配置(config)、已知主机记录(known_hosts),Remote-SSH连接直接失效 -
%APPDATA%\Code\User\workspaceStorage:每个打开过的工作区索引与调试快照,删掉后首次打开项目会卡顿数分钟重建
注意:CachedData 和 Cache 子目录可不备份(重装后自动重建),但不要提前删除——它们可能被正在运行的 VSCode 进程占用,导致备份失败。
别信 Settings Sync 能同步一切
Settings Sync 确实能拉取 settings.json、扩展列表、keybindings.json 和代码片段,但它完全不处理以下三类关键内容:
-
workspaceStorage里的项目级索引数据(比如 TypeScript 语言服务的语义分析缓存) -
.ssh下的私钥和config文件(云同步不会上传私钥) - 插件自身的本地缓存(如 Python 扩展的 Pylance 模型、C++ 的 IntelliSense 数据库)
如果你依赖 Remote-SSH 或频繁切换工作区,只开 Settings Sync 就重装,大概率会遇到“设置回来了,但连不上服务器”或“打开项目后智能提示全挂了”的情况。
备份时最容易忽略的两个致命操作
很多用户备份完就关机,结果恢复时发现插件全白屏或 SSH 报错,问题往往出在以下两步没做:
-
必须彻底关闭 VSCode 进程:任务管理器里检查是否有残留的
Code.exe或Code Helper (Renderer).exe,否则workspaceStorage和CachedData可能被锁住,复制出来的是损坏副本 - 不要用资源管理器“剪切”再“粘贴”:Windows 的剪切操作在跨盘时本质是“复制+删除”,若中途断电或误操作,原数据就没了。一律用“复制+校验+确认无误后再手动删旧目录”
校验方法很简单:对比新旧目录下 extensions 文件夹的子目录数量,或用 dir /s 统计总文件数是否一致。
恢复后必须立刻验证的三件事
覆盖完所有目录、重启 VSCode 后,别急着写代码,先做这三件事:
- 点左下角 Remote Explorer,尝试连接一个已配置的服务器;如果报
REMOTE HOST IDENTIFICATION HAS CHANGED,说明known_hosts冲突,需手动删掉对应行或执行Remote-SSH: Kill VS Code Server on Host - 打开任意一个曾用过的项目文件夹,观察右下角语言模式是否正常识别(如 Python 图标亮起),并等待几秒看有没有“正在分析…”提示——没有说明
workspaceStorage没生效 - 按
Ctrl+Shift+P输入Developer: Toggle Developer Tools,切到 Console 标签页,快速扫一眼有没有红色报错,特别是Failed to load extension或Cannot find module类错误
这些步骤看起来琐碎,但跳过任何一个,都可能让后续半天时间花在排查“为什么我的环境突然不 work 了”上。











