关键在于将 workbench.startupeditor 设为 "none",并同步设置 window.restorewindows 为 none 或 folders;否则空窗口恢复会触发欢迎页。

workbench.startupEditor 设为 none 是关键
只设 window.restoreWindows 为 none 或 all,欢迎页照样弹——真正跳过它的开关是 workbench.startupEditor。它控制“启动时默认打开什么编辑器”,设成 none 后 VSCode 连空白标签都不创建,自然没地方塞欢迎页。
实操建议:
- 打开设置(
Ctrl+,),搜索startupEditor,下拉选none - 不要手输字符串,VSCode 设置 UI 里选项是带引号的
"none",JSON 手动改也必须加双引号 - 如果之前设过
welcomePage或readme,务必切回来,否则仍会触发
window.restoreWindows 必须同步配对
workbench.startupEditor 单独生效的前提,是 window.restoreWindows 不强行恢复一个空窗口。如果你设了 workbench.startupEditor: "none",但 window.restoreWindows 是 all,VSCode 会先恢复上次所有窗口(包括一个什么都没打开的空窗口),再往里面塞欢迎页——结果就是欢迎页照常出现,还多一个空窗口。
实操建议:
- 搜索
restoreWindows,选none(彻底不恢复)或folders(只恢复文件夹,不恢复空窗口) - 想启动就回到上次项目?用
folders+workbench.startupEditor: "none",比all更干净 - 检查快捷方式目标路径末尾有没有残留
--welcome,有就删掉
命令行启动时别被参数绕晕
用终端敲 code 启动,看似简单,但参数优先级高于设置项。比如 code --new-window 会无视 window.restoreWindows,强制开新窗;code --welcome 则直接覆盖所有设置,必弹欢迎页。
常见安全组合:
-
code .(在项目根目录下)→ 恢复该工作区历史,不弹欢迎页 -
code --reuse-window→ 复用已有窗口,适合快速追加文件 -
code --skip-getting-started→ 专用于 CI/自动化,跳过首次运行提示(但不替代startupEditor) - 绝对避免:
--new-window、--welcome、--disable-workspace-trust
扩展和残留进程常是真凶
改完设置重启还是弹欢迎页?大概率不是设置失效,而是更高优先级行为劫持了流程。比如某些主题扩展(如 vscode-startpage)会在启动时主动调用 workbench.action.showWelcomePage;后台残留的 Code Helper 进程也可能让新实例降级为“新窗口”模式。
排查步骤:
- 启动时按住
Shift(macOS 是Cmd),临时禁用所有扩展,看是否还弹 - 任务管理器 / 活动监视器里搜
Code Helper,杀掉所有残留进程再试 - 检查是否有未关闭的空窗口:VSCode 认为那是你主动创建的,下次启动会优先恢复它
- 打开命令面板(
Ctrl+Shift+P),搜Preferences: Open Settings (JSON),确认没手动写错值,比如漏了引号或拼错键名
workbench.action.showWelcomePage」——盯着这两个点查,比反复重装或清配置高效得多。











