导出 VSCode 设置需直接复制系统路径下的 settings.json 文件,而非通过 UI 导出;同时需备份 keybindings.json、snippets/ 目录、extensions.txt 及 Profile/Remote 专属配置。

直接复制 settings.json 文件就是导出 JSON
VSCode 没有“导出为 JSON”按钮,所谓导出,本质就是把真实生效的 settings.json 文件完整拷出来。它本身就是标准 JSON 格式,不是 UI 渲染后生成的快照——别用「设置 → 打开设置 (JSON)」再手动复制内容,那会丢注释、漏显式禁用项(比如 "editor.minimap.enabled": false 在 UI 里根本不显示),还容易因缩进或换行符错乱导致解析失败。
必须从系统路径找 settings.json,别翻安装目录
它不在 VSCode 程序文件夹里,硬查 Program Files 或 Applications/Visual Studio Code.app 一定扑空。真实路径由操作系统决定:
- Windows:
%APPDATA%\Code\User\settings.json(文件资源管理器地址栏粘贴即可直达) - macOS:
~/Library/Application Support/Code/User/settings.json(终端执行open ~/Library/Application\ Support/Code/User快速打开) - Linux:
~/.config/Code/User/settings.json
导出前不清理这三类字段,导入后大概率静默失效
直接拷贝原文件到新机器,VSCode 启动时不会报错,但会跳过整行配置,回退到默认值。重点删或注释掉:
- 绝对路径类:
"python.defaultInterpreterPath"、"files.exclude"或"search.exclude"中含C:\Users\、/home/、/Users/ - 平台专属类:
"terminal.integrated.profiles.windows"、"terminal.integrated.fontFamily"(macOS/Linux 下可能阻断加载) - 插件强依赖类:
"prettier.bracketSpacing"、"todo-tree.tree.showScanModeButton"(新机器没装对应插件时,该行被忽略,行为链断裂)
别只导 settings.json,这些也得一起搬
单独一个 JSON 文件无法还原完整环境:
-
keybindings.json:自定义快捷键,只在你改过之后才存在,路径同settings.json -
snippets/目录:整个文件夹,不是单个文件;代码片段不会出现在settings.json里 - 扩展列表:终端运行
code --list-extensions > extensions.txt,重装后靠它批量安装
Profile 配置、Remote 场景(如 WSL/SSH)下的 settings.json 分离存放,需单独处理,漏掉就只剩一半配置。











