直接删User目录最有效,但不能靠“全局设置”界面操作;它包含settings.json、keybindings.json、snippets、sessions等,删后重置全部用户级配置,需同步清理extensions、globalStorage、workspaceStorage及后台进程。

直接删 User 目录最有效,但不能靠“全局设置”界面操作
VSCode 没有内置的“通过设置界面一键清除配置缓存”功能。所谓“全局设置”(settings.json)只是文本配置,它不管理缓存文件本身。真正存配置缓存的是 %APPDATA%\Code\User(Windows)、~/Library/Application Support/Code/User(macOS)或 ~/.config/Code/User(Linux)这个目录——它包含 settings.json、keybindings.json、snippets、同步会话 sessions 等,删掉就等于重置全部用户级配置。
User 目录里哪些能删、哪些要备份?
进到 User 目录后,按需处理以下内容:
-
settings.json、keybindings.json、snippets/:可删,但建议先复制备份——它们是你手动改过的所有偏好; -
sessions/:必须删,这是同步状态和登录会话缓存,残留会导致同步失败或配置反复冲突; -
globalStorage/:可删,它存插件私有数据(如 Pylance 的类型索引快照),删后首次启动对应插件会重建; -
workspaceStorage/不在User下,别在这儿找——它在上一级WorkspaceStorage路径里,属于工作区级缓存,不是“配置缓存”;
为什么清完 User 后 VSCode 还像没变?
常见错误现象:User 删了,重启 VSCode 却发现设置还在、扩展还开着、甚至同步自动连上了。这是因为:
- 扩展本体存在
%USERPROFILE%\.vscode\extensions(Windows)或~/.vscode/extensions(macOS/Linux),没删它,扩展就还在; - 同步服务可能已缓存云端状态,下次启动时自动拉取旧配置覆盖本地;必须先在 UI 里点“关闭设置同步”,再删
sessions; - 某些插件把配置写进了
globalStorage或WorkspaceStorage,只动User不够彻底; - Windows 下还有
%LOCALAPPDATA%\Code存着日志和临时会话,删它才能断干净后台进程依赖。
删 User 前必须做的三件事
避免删完打不开、登不上、或被残留进程锁住文件:
- 用
Ctrl+Shift+P→ 输入Developer: Toggle Developer Tools,确认控制台无报错,再执行Developer: Reload Window; - 如果用了 Remote - WSL,先运行
Remote-WSL: Close Remote Connection,再终端敲wsl --shutdown; - 任务管理器里杀光所有
Code.exe、node.exe、Code Helper.exe进程——Windows 经常后台挂着不释放句柄。
真正干净的配置缓存清理,是路径意识 + 进程意识 + 同步意识的组合动作。单靠改设置或点按钮,永远清不彻底。


















