vscode 1.84+ 官方 settings sync 已弃用 github 登录,强制使用 microsoft 账户;若需 github 同步,须改用第三方 settings sync 插件并手动配置 gist 权限与 token,且注意工作区设置不参与同步。

VSCode 1.84+ 官方 Settings Sync 已不再支持 GitHub 账户登录,必须用 Microsoft 账户(@outlook.com / @hotmail.com / Azure AD)才能启用内置同步;若坚持用 GitHub 同步,只能靠第三方 Settings Sync 插件,且需手动配 gitee.gist 和 gitee.access_token(注意:这是 Gitee 配置项名,GitHub 实际用 sync.gist 和 sync.token)。
为什么 Preferences: Turn On Settings Sync 选 GitHub 会卡住或报错
这不是你网络或 token 的问题,而是 VSCode 官方服务端已拒收 GitHub 凭据。自 2023 年底起逐步切换,到 2026 年已全面强制使用 Microsoft 账户认证体系。
- 点击命令面板输入
Preferences: Turn On Settings Sync→ 选 GitHub → 页面跳转后空白或卡在Signing in… - 授权后提示
Failed to sync: Bad credentials,说明后端根本不处理 GitHub 登录请求 - 检查
Help → About,确认版本 ≥ 1.84;若版本达标却仍失败,基本可判定是账户类型不匹配
用 Settings Sync 插件同步到 GitHub 的实操要点
这个插件(作者 Shan Khan)仍活跃维护,但所有配置都写在 settings.json 里,和内置 sync 完全隔离——混用会导致覆盖、上传失败或权限错误。
GitHub Hosts 更新工具(仅限中国用户),安全更新系统hosts文件,保留原有非GitHub条目,仅替换GitHub相关地址。支持备份恢复和风险提示。用于解决GitHub访问问题。
- 安装插件后,必须运行
Sync: Login with GitHub,跳转时务必勾选gist权限(不是repo) - 首次
Sync: Upload Settings会自动创建名为cloudSettings的私有 Gist,ID 可在https://gist.github.com查看 - 插件默认不同步扩展列表,需手动执行
Sync: Advanced Options → Toggle Extension Sync -
settings.json中硬编码的路径(如"python.defaultInterpreterPath": "/home/user/.pyenv/versions/3.11.9/bin/python")必须改写为${env:HOME}形式,否则另一台机器直接失效
同步后插件没装上?常见原因和应对
插件 ID 写进远程配置了,但不会自动下载安装——这是设计行为,不是 bug。
- 新设备上先运行
Sync: Download Settings,再立刻运行Sync: Install Extensions(两个命令独立,缺一不可) - 如果
extensions.autoUpdate设为false,同步后插件 ID 已存在,但不会触发自动安装 - 某些插件平台不兼容(比如 Windows 专用插件同步到 macOS),VSCode 不报错,只显示
Disabled,需人工剔除或换适配版 - 敏感字段如含
http://、token、password的配置会被插件自动过滤,不会上传到 Gist
最易被忽略的是:本地工作区设置(.vscode/settings.json)永远不参与任何同步,这是 VSCode 的明确设计限制,不是配置遗漏;另外,同步不是实时双向,改完设置后必须手动触发 Sync: Upload Settings,否则其他设备永远拉不到最新状态。










