VSCode 多设备设置不同步需启用同步功能:一、用 GitHub/Microsoft 账号开启内置 Settings Sync 并勾选同步项;二、手动拉取或上传更改,冲突时人工选择;三、可用 Settings Sync 扩展通过 Gist 同步;四、可导出导入 settings.json;五、用命令同步扩展列表。

如果您在多台设备上使用 VSCode,但发现扩展、主题、快捷键等设置不一致,则可能是由于未启用同步功能或同步配置异常。以下是实现设置同步的具体操作步骤:
本文运行环境:MacBook Air,macOS Sequoia
一、启用内置 Settings Sync 功能
VSCode 自 1.63 版本起内置 Settings Sync,通过 GitHub 或 Microsoft 账户登录后可自动同步扩展、主题、键盘快捷键、用户代码片段、UI 状态等核心配置。
1、启动 VSCode,在左侧活动栏点击齿轮图标,选择 设置。
2、在右上角点击 同步已关闭 按钮(或查看状态栏右下角云朵图标是否为灰色)。
3、点击 登录并打开同步,选择 GitHub 或 Microsoft 账户完成授权。
4、首次同步时,系统会提示选择要同步的项目,确保勾选 扩展、设置、键盘快捷方式、用户代码片段、UI 状态。
二、手动触发同步与冲突处理
当多台设备设置发生变更后,VSCode 不会实时双向覆盖,需手动拉取远程更改或上传本地更改,避免配置丢失或覆盖错误。
1、按下 Cmd + Shift + P(macOS)或 Ctrl + Shift + P(Windows/Linux)打开命令面板。
2、输入并选择Preferences: Sync: Show Sync Status,查看当前同步状态。
3、若显示“有新更改”,点击 下载更改 以应用其他设备的更新;若本地有未上传更改,点击 上传更改。
4、如遇冲突(例如两台设备同时修改了同一设置),VSCode 会弹出对话框,提供 接受传入更改 或保留本地更改 选项,需人工判断选择。
三、使用 Settings Sync 扩展替代方案
若内置同步不可用(如企业网络屏蔽 GitHub 登录),可安装社区维护的 Settings Sync 扩展,它通过 GitHub Gist 存储配置快照,兼容性更广且支持自定义同步范围。
1、在扩展视图中搜索并安装Settings Sync(作者:Shan Khan)。
2、重启 VSCode 后,按 Cmd + Shift + P,输入并运行Sync: Update/Upload Settings。
3、首次运行时会跳转至 GitHub 页面生成 Personal Access Token,需勾选 gist 权限。
4、将生成的 Token 粘贴至 VSCode 提示框,随后执行 Sync: Download/Update Settings 即可从 Gist 拉取最新配置。
四、导出与导入 settings.json 手动同步
对于严格限制网络认证的环境,可直接导出用户设置文件,在设备间复制粘贴,适用于仅需同步少量关键配置的场景。
1、打开 VSCode 命令面板,运行Preferences: Open Settings (JSON)。
2、将打开的 settings.json 全部内容复制保存为文本文件,例如 vscode-settings-backup.json。
3、在目标设备上,同样打开 settings.json,清空全部内容后粘贴备份内容。
4、保存文件并重启 VSCode,部分设置(如路径相关项)需检查是否仍指向原设备路径,应替换为 当前设备的有效路径。
五、同步扩展列表而不安装全部扩展
某些设备资源有限(如旧款 Mac 或远程开发容器),无需安装全部扩展,仅需同步已启用 / 禁用状态清单,便于后续按需安装。
1、在任意一台设备上,打开终端,执行命令:code –list-extensions –show-versions > extensions-list.txt。
2、将生成的 extensions-list.txt 文件复制到目标设备。
3、在目标设备终端中,逐行执行:code –install-extension author.name@version(从文件中提取每行内容作为参数)。
4、如只需同步禁用列表,可在命令面板中运行Extensions: Configure Extension Settings,对指定扩展选择Disable (Workspace),该状态会随 settings.json 一同同步。