直接删cache、gpucache和workspacestorage最有效,但须先彻底退出所有vscode进程,否则文件句柄被锁致空间不释放;cache/gpucache可全删且重启自动重建,不影响配置;workspacestorage需按修改时间精准清理90天前的guid子目录。

直接删 Cache、GPUCache、workspaceStorage 三个目录最有效,但必须先彻底退出所有 VSCode 进程,否则删不干净、空间不释放、重启后缓存重建异常。
为什么删了缓存磁盘空间没变?
常见错误现象:workspaceStorage 或 Cache 目录删完后磁盘占用不变,任务管理器/活动监视器里仍看到 Code.exe、Code Helper.exe、node.exe(Windows/macOS)或 code(Linux)在后台运行——这些进程锁住了文件句柄,系统无法回收空间。
- Windows:打开任务管理器 → “详细信息”页 → 结束所有
Code.exe、Code Helper.exe、node.exe - macOS:活动监视器 → 搜索
Code→ 强制退出全部相关进程 - Linux:终端执行
pkill -f "code"或killall code - 若用过
Remote - WSL,还需先运行wsl --shutdown,再关 VSCode
哪些缓存目录可以安全全删?
Cache 和 GPUCache 是纯运行时缓存,删完重启自动重建,不影响任何配置、插件状态或登录态。它们是 Chromium 渲染层产物,长期不清理会导致 UI 卡顿、右键响应迟滞、终端输入延迟。
- Windows 路径:
%APPDATA%\Code\Cache、%APPDATA%\Code\GPUCache - macOS 路径:
~/Library/Caches/com.microsoft.VSCode(注意不是Application Support下那个) - Linux 路径:
~/.cache/Code -
CachedData也建议一并清理:它是 Electron 启动时的 JS 编译缓存,大版本升级后旧缓存不会自动清除,常占几百 MB 到 2 GB+
workspaceStorage 怎么精准清理不伤启动速度?
workspaceStorage 是 C 盘最大头目,每个子目录对应一个你打开过的文件夹,名字是 GUID(如 8a2b3c4d),无法靠名称判断归属,但修改时间 ≈ 最后一次打开该工作区的时间。
- 路径(Windows):
%APPDATA%\Code\User\workspaceStorage - 路径(macOS/Linux):
~/.config/Code/User/workspaceStorage - 按“修改日期”排序,删除所有修改时间早于 90 天的子目录
- 重点盯体积标着 “1.2 GB”、“2.7 GB” 的长名目录——大概率是已废弃的 WSL 工作区、monorepo 或含大量
node_modules的 Python 项目残留 - 删错不会丢
.vscode/settings.json或launch.json,但首次重开该工作区时搜索和跳转会慢几秒(索引重建)
C/C++ 扩展的 ipch 缓存怎么处理?
ipch 不是普通缓存,是 vscode-cpptools 的 IntelliSense 预编译头数据库,硬编码在 %LocalAppData%\Microsoft\vscode-cpptools\ipch,默认上限 5120MB 但实际常突破 10GB。
- 不能简单删除:删了会导致悬停无提示、跳转失败、补全失效
- 推荐迁移而非清理:用符号链接把整个
ipch目录挪到非系统盘,例如mklink /D "%LocalAppData%\Microsoft\vscode-cpptools\ipch" "D:\vscode-cpptools\ipch"(Windows) - 或通过设置调小缓存上限:
C_Cpp.intelliSenseCacheSize改为1024(单位 MB),但对大型项目可能影响响应速度 - 别碰
User和GlobalStorage:前者存settings.json、信任工作区标记;后者存 GitLens 图谱、Pylance 符号路径等关键数据
真正容易被忽略的是 -cache 后缀的扩展残留目录——比如 ms-python.python-2024.8.0-cache,它们卡在 .vscode\extensions 里不动,既不被卸载清理,又持续占空间,还可能引发 Failed to fetch extension 错误。











