VSCode 启动慢主因是扩展同步加载或工作区配置不当;禁用扩展、配置files.watcherExclude和extensions.experimental.affinity可将冷启动从4秒降至800ms。

VSCode 启动慢,八成不是电脑太旧,而是某个扩展在启动时同步读文件、初始化语言服务器,或者工作区配置让 VSCode 一打开就在扫描整个 node_modules。直接禁用几个关键扩展 + 改两行配置,冷启动从 4 秒降到 800ms 很常见。
怎么快速判断是不是扩展拖慢了启动
最干净的验证方式就是绕过所有扩展启动:
- 完全退出 VSCode(macOS 上要 Cmd+Q,不能只关窗口)
- 终端执行:
code --disable-extensions - 如果秒开,基本坐实是扩展问题;再补一句
code --disable-extensions --disable-gpu,排除渲染干扰 - 想看具体哪个扩展耗时高?按 Cmd+Shift+P → 输入并运行
Developer: Startup Performance,重点关注 “Extensions” 下单个条目是否超过 300ms
哪些扩展最常成为启动瓶颈
不是装得多就慢,而是某些扩展默认在 onStartup 或通配符 * 激活事件下强制加载,哪怕你根本没打开 .py 或 .js 文件:
-
GitLens:图形化 Git 操作很香,但启动时会预加载提交历史和分支图 —— 用内置 Git 功能够用的话,建议禁用 -
ms-python.python(旧版 Python 扩展):首次启动会同步下载并解压语言服务器,卡顿明显;新版已优化,但如果你没升级,它大概率是头号嫌疑 -
esbenp.prettier-vscode和dbaeumer.vscode-eslint:只要工作区里有.prettierrc或eslint.config.js,它们就会在启动时解析配置、校验依赖路径 -
github.copilot:AI 补全类扩展普遍在启动时建立连接、加载模型元数据,尤其网络不稳定时会阻塞主进程
改哪几行 settings.json 能立竿见影
别碰大改设置界面,直接编辑 settings.json(Cmd+Shift+P → Preferences: Open Settings (JSON)),加这三块最有效:
- 告诉 VSCode 别监视构建目录:
"files.watcherExclude": {"**/node_modules/**": true, "**/dist/**": true, "**/build/**": true, "**/.git/**": true} - 避免扩展一启动就加载(适用于 Python、Prettier 等):
"extensions.experimental.affinity": {"ms-python.python": 2, "esbenp.prettier-vscode": 2}—— 数字2表示“仅在打开对应文件或触发命令时加载” - 关掉可能引发系统级冲突的选项:
"disable-hardware-acceleration": true(尤其 Windows 远程桌面或老旧核显场景下,这个 flag 比--disable-gpu更稳定生效)
容易被忽略的陷阱点
很多人试了上面几步还是慢,往往卡在这几个隐形环节:
- 工作区根目录选错了:比如你
Open Folder…的是用户主目录/Users/you,VSCode 会尝试监听全部子文件夹,node_modules在任意子项目里都会被扫到 -
.vscode/settings.json里写了正则匹配过宽的files.exclude,比如"**/logs/**"实际匹配了几万个小日志文件,导致启动时做大量路径判断 - Linux 系统 inotify 句柄不够:执行
cat /proc/sys/fs/inotify/max_user_watches,若低于524288,光靠files.watcherExclude也压不住底层报错 - 扩展禁用后没重启:VSCode 的
Disable (Workspace)不会立刻卸载运行中的实例,必须完全退出再重开才生效


















