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)。
发卡宝是一个专业的软件卡密等虚拟商品在线交易平台,拥有多种兑换方式,费率低,结算快,正规企业平台一直稳定运营,24小时不间断提供自动发卡服务。【模板说明】试用版自带一套模板(响应式)【环境支持】PHP环境 / 200M或以上空间大小 / 开启父路径 / 设置index.php为默认首页 / 目录写入权限需要开启【数据库】MySQL【安装步骤】将文件上传至空间目录,运行“http://域名/inst
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 一同同步。









