vscode 安装后多端配置同步无需额外插件,官方已内置 settings sync 功能;旧版需升级至 1.75+ 版本方可使用。

VSCode 安装后,多端配置同步不需要额外插件——官方已内置 Settings Sync 功能,直接可用;但若你用的是旧版 VSCode(
怎么确认当前 VSCode 是否支持原生同步
打开 VSCode,观察窗口左下角。如果能看到用户头像或“登录”按钮,说明已具备原生 Settings Sync(2022 年起默认启用)。此时无需安装任何第三方插件,Sync: Turn on Settings Sync 命令即可触发流程。若左下角无此入口,大概率是 VSCode 版本低于 1.70,需升级或改用 GitHub Gist + Settings Sync 插件(Shan Khan 版)。
- 检查版本:
Help → About或终端运行code --version - 1.70+ 支持 Microsoft 账户 / GitHub 账户双认证,Gist 不再是唯一选择
- 低于 1.70 的版本即使装了插件,也可能因 API 变更导致
Sync: Upload失败或报401 Unauthorized
GitHub Personal Access Token 怎么生成才有效
Gist 同步依赖 GitHub 的 gist 权限,不是随便一个 token 都能用。常见错误是生成时漏选权限,或用了已废弃的 Classic Token 类型(2025 年后 GitHub 默认只允许 fine-grained tokens)。
- 必须勾选
Gists权限(fine-grained token 下在 “Account permissions” 中开启) - 不要勾选
admin:org、delete_repo等无关高危权限 - token 名建议带标识,如
vscode-sync-2026,方便后续在 GitHub 设置页快速定位和撤销 - 复制后立即使用,GitHub 不会再次显示明文 —— 一旦关闭页面就只能重生成
同步内容里哪些会被忽略,哪些会冲突
settings.json 和 keybindings.json 一定同步,但工作区级配置(即项目根目录下的 .vscode/settings.json)**完全不参与同步**。这是设计使然,不是 bug。
- 扩展列表同步只记录 ID,不保存版本号 —— 新设备上安装的是当前 Marketplace 最新兼容版,可能与旧设备不一致
- Snippets 同步的是 JSON 文件内容,但若本地有同名 snippet 且内容不同,同步时会覆盖本地(非合并)
- 若两台设备同时修改并上传,VSCode 不做自动合并,后一次上传会覆盖前一次 —— 没有 Git 式 conflict 提示
-
sync.removeUnsyncedEntries设为true时,云端没有但本地有的扩展会被自动卸载
为什么新设备下载后插件没自动安装
这不是网络问题,而是 VSCode 默认延迟安装扩展:它先同步清单,再后台静默安装。你可能已经看到扩展出现在“已安装”列表里,但图标灰着,状态栏提示“正在安装…”。
- 等 30 秒左右再刷新扩展面板,或手动点击右上角刷新按钮
- 检查
extensions.autoUpdate是否为true—— 若为false,旧版本插件不会升级,新设备也不会主动拉取 - 某些插件(如 Live Share、Remote-SSH)需额外授权或系统依赖,同步后仍需手动触发首次激活
- 如果卡在“Installing…”超 2 分钟,可尝试命令面板执行
Developer: Toggle Developer Tools,看 Console 是否有extensionHost错误
最易被忽略的一点:同步不是单向备份,而是双向状态对齐。你在 A 设备删了一个插件,B 设备下次同步时也会被卸载 —— 这个行为由 sync.removeUnsyncedEntries 控制,默认开启。如果你只想“保留本地”,得提前关掉它,而不是指望同步跳过。











