Sublime Text无原生自动同步功能,必须手动通过符号链接+云盘或Git同步Packages/User目录;仅需同步.sublime-settings、平台专属.sublime-keymap、*.sublime-snippet三类文件,避免缓存与路径冲突导致插件失效或快捷键失灵。

Sublime Text 没有原生自动同步功能,所谓“自动”全是靠你手动搭的符号链接 + 云盘,或者 Git 推拉实现的——别信任何声称“开个开关就同步”的说法,那只是把外部流程包装得像内置功能。
为什么不能依赖 Sublime 自带同步或插件
Package Control 的 sync_settings 功能早在 ST4 后基本失效,官方已不维护;第三方同步插件(如 Sync Settings)要么只传 Preferences.sublime-settings,要么硬拷整个 Packages/ 目录,结果就是:ImportError: No module named 'package_control'、插件菜单变灰、.sublime-snippet 按 Tab 不触发。根本原因是它们没区分用户配置和运行时缓存。
只同步 Packages/User/ 目录才真正安全
这个目录里全是明文配置文件,跨平台兼容性最高,且不含任何 Python 缓存、Session 数据或插件源码:
-
Preferences.sublime-settings:字体、缩进、主题、UI 行为 -
Package Control.sublime-settings:关键字段"installed_packages"决定哪些插件该重装 -
Default (Windows).sublime-keymap和Default (OSX).sublime-keymap:必须分别保留,不能混用 -
*.sublime-snippet:自定义代码片段,scope 写错或换行符损坏会导致静默跳过 - 各插件专属配置,如
SideBarEnhancements.sublime-settings、ChineseLocalization.sublime-settings
注意:color_scheme 字段引用的 .tmTheme 或 .sublime-color-scheme 文件不在 User/ 下,得单独找出来一并放进云盘或 Git 仓库。
用符号链接 + 云盘实现“零感同步”
这是最轻量、最接近自动的方式,适合只在几台个人设备间同步、不想碰 Git 命令的人。核心是“移动 + 链接”,不是复制粘贴:
- 操作前务必退出 Sublime Text,包括后台进程(Windows 查任务管理器,macOS 看活动监视器,Linux 用
ps aux | grep sublime) - 用
Preferences → Browse Packages…确认真实路径(ST4 用户注意路径含Sublime Text 4,不是3) - 把整个
User/文件夹剪切到云盘(如Dropbox/SublimeConfig/User),再删掉原User/目录 - 在原位置创建符号链接:
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 - 云盘选 Dropbox 或坚果云;iCloud 同步
~/Library/不稳,OneDrive 对%APPDATA%有路径限制
Git 同步更适合需要版本控制或跨平台换行处理的场景
如果你常改配置、想回溯某次快捷键误调、或在 Windows/macOS/Linux 间频繁切换,Git 是更可控的选择:
- 进入
User/目录后执行:git init && git add . && git commit -m "init" - 推送到私有远程仓库(GitHub/GitLab),注意加
.gitignore过滤临时文件(如*~、*.tmp) - 新设备上关掉 Sublime,备份原
User/,再git clone到相同路径 - 不同系统换行符(CRLF vs LF)可能破坏
.sublime-keymap解析,建议全局设置:git config --global core.autocrlf input
复杂点在于:汉化插件(如 ChineseLocalization)要三文件协同生效,缺一不可;而某些插件(如 GitGutter)的功能依赖本地 Git 二进制路径,同步后得手动检查 git_path 配置是否匹配当前系统。











