只同步Packages/User目录即可触发插件自动重装,因其包含Package Control.sublime-settings文件,其中installed_packages数组控制插件安装状态;同步后需确保Package Control已安装且该文件JSON格式合法、数组非空。

只同步 Packages/User/ 目录就能触发插件自动重装
Sublime Text 的插件安装状态由 Package Control.sublime-settings 文件控制,它存放在 Packages/User/ 下,里面明确列出了 installed_packages 数组。只要这个文件被同步过去,且 Package Control 已正确安装,Sublime 启动时就会自动拉取并安装列表里的所有插件——不需要手动一个个点 Install Package。
常见错误现象:新设备上插件菜单全灰、Ctrl+Shift+P 里搜不到插件命令、控制台报 ImportError: No module named 'package_control'。这基本不是配置没同步,而是 Package Control 没装好,或 installed_packages 列表为空/损坏。
-
Package Control.sublime-settings必须存在且格式合法(JSON),数组不能为空,也不能含非法字符或换行符 - 确保新设备已安装 Package Control:按
Ctrl+Shift+P输入Package Control,能看到完整命令列表才算成功 - 如果插件没自动装,先执行
Package Control: Satisfy Dependencies,再重启 Sublime
mklink /J 或 ln -s 是唯一真正实时的同步方式
复制粘贴 Packages/User/ 目录是“快照式”同步,改完一台得手动再复制一遍;而符号链接让 Sublime 始终读写云盘上的同一份文件,改完保存,几秒内另一台就能加载新插件配置或新代码片段。
关键限制:操作前必须彻底退出 Sublime Text。Windows 下仅关闭窗口不够,要确认任务管理器里没有 subl.exe 或 sublime_text.exe 进程;macOS/Linux 可用 pgrep -f sublime 检查。
- Windows(管理员 CMD):
mklink /J "C:\Users\用户名\AppData\Roaming\Sublime Text 4\Packages\User" "D:\Dropbox\SublimeConfig\User" - macOS/Linux(终端):
ln -s ~/Dropbox/SublimeConfig/User ~/Library/Application\ Support/Sublime\ Text\ 4/Packages/User - 路径必须用
Preferences → Browse Packages…确认,ST4 用户注意路径含Sublime Text 4,不是Sublime Text或Sublime Text3
别碰 Installed Packages/ 和 Packages/ 其他子目录
硬拷整个 Packages/ 目录是踩坑高发区。里面混着插件源码(如 Emmet/)、Python 缓存(__pycache__/)、会话文件(Session.sublime_session)和本地缓存(Package Control.cache)。这些文件跨设备、跨平台极易不兼容,导致插件静默失效——比如 .sublime-snippet 在命令面板里能搜到,但按 Tab 就不展开,控制台却无报错。
真正需要同步的只有三类文件:*.sublime-settings、*.sublime-keymap、*.sublime-snippet。它们全在 Packages/User/ 里,连插件自己的用户配置(如 SideBarEnhancements.sublime-settings)也在此处。
-
color_scheme字段引用的.tmTheme或.sublime-color-scheme不在User/内,需单独找出并同步到云盘同级目录 - iCloud 和 OneDrive 对
%APPDATA%或~/Library同步支持差,Dropbox 或坚果云更稳 - 不要重命名原
User/目录,必须删掉——否则符号链接会指向一个空目录
Git 同步适合需要回滚或多人协作的场景
Git 不是“自动同步”,而是版本控制。它解决的是“上周我删掉的那个快捷键怎么找回来”“同事改坏了 Preferences.sublime-settings 怎么还原”这类问题。但它要求每次修改后手动 git add、commit、push,新设备首次 setup 多两步:先装好 Package Control,再把克隆下来的 User/ 放进对应位置。
容易忽略的细节:Package Control.sublime-settings 中的 installed_packages 列表,必须在 Git 提交前确保已更新。如果某插件是手动拖进 Installed Packages/ 的,它不会自动写入该列表,得手动补上。
- 新设备首次 setup 流程:装 ST → 装 Package Control →
git clone到Packages/同级 →ln -s或mklink /J指向克隆目录下的User - 避免在多端同时改同一份配置,Git 冲突比云盘冲突更难解
- 换行符差异(CRLF vs LF)在跨平台时可能引发 JSON 解析失败,建议 Git 设置
core.autocrlf=input

















