local history 插件需通过 package control 安装并手动启用,依赖编辑器事件每120秒存快照于本地.sublime-history/目录,仅支持手动查看恢复,不替代git且无跨设备同步能力。

Sublime Text 本身不保存代码版本记录,Local History 插件是目前最接近“本地快照式回溯”的可行方案,但它不是 Git,也不替代 Git;它只在你编辑时自动抓取快照,且快照仅存于当前机器的 .sublime-history/ 目录下。
Local History 插件怎么装才真正生效
别只搜到就装——它依赖 Sublime 的 Python API 版本和路径权限,旧版插件在 ST4 下可能静默失败。
- 必须用 Package Control 安装:按
Ctrl+Shift+P→ 输入Package Control: Install Package→ 搜Local History(作者 kemayo)→ 点击安装 - 安装后不会自动启用,需确认 Preferences → Package Settings → Local History → Settings 中
"enabled": true已开启 - 检查插件日志:按
Ctrl+`打开控制台,修改文件后看是否有LocalHistory: saved snapshot for xxx.py日志输出;没日志 = 没触发 - Windows 用户特别注意:如果 Sublime 是以管理员身份运行,而
.sublime-history/路径在用户目录下,可能因权限不足写入失败
快照什么时候生成、能回溯到哪一步
Local History 不是实时监听文件系统,而是靠 Sublime 编辑器事件驱动——只有你在编辑器里做了“编辑动作”,它才可能存一份快照。
- 默认每 120 秒自动保存一次,但仅限当前**已打开且有编辑行为**的文件;关掉标签页后不再抓取
- 手动触发快照:按
Ctrl+Shift+P→ 输入Local History: Save Current File,适合改关键逻辑前主动留档 - 不会捕获命令行修改、外部工具(如 Webpack、Python 脚本)对文件的覆盖;这类变更它完全感知不到
- 快照命名格式为
filename.py@2026-04-19-01-55-22,时间精度到秒,但同一秒内多次保存会覆盖,不叠加
怎么查看和恢复历史版本
它没有图形化时间轴,所有操作都通过命令面板或右键菜单完成,路径必须准确,否则找不到快照。
- 右键点击编辑区 → 选择
Local History: Show History,会列出该文件所有可用快照(按时间倒序) - 点击某条快照,会新开一个只读视图;想恢复?不能直接覆盖原文件,得手动复制内容或用右键菜单中的
Replace Current File - 快照存储位置默认是项目根目录下的
.sublime-history/;如果你用File → Open Folder打开的是子目录(比如/src/utils/),而.git在上层,快照仍会建在/src/utils/.sublime-history/—— 这会导致换机器或重装后历史丢失 - 删除快照?直接进
.sublime-history/文件夹删对应文件即可,插件不提供清理命令
Local History 和 BackupOnSave、Git History 容易混淆的点
三者定位完全不同,混用反而导致冗余或误判。
-
BackupOnSave只在你按Ctrl+S后生成main.py~2026-04-19-01-55-22这类备份,不依赖编辑动作,但也不会存未保存的修改 -
Git History显示的是git log记录,只读取.git,刚改完没add或commit的内容它完全看不见 -
Local History存的是编辑器内部状态快照,不压缩、不校验、不跨设备同步;你删掉.sublime-history/文件夹,所有快照立刻清零,且无法从其他地方还原 - 性能影响:大量小文件长期积累(尤其 TypeScript/JS 项目),
.sublime-history/可能达 GB 级;建议在插件设置中加"max_history_files": 50限制数量
真正容易被忽略的是:Local History 的快照生命周期完全绑定 Sublime 进程和本地磁盘路径。它不和 Git 交互,不上传云端,不跨窗口共享——你关掉编辑器再打开,只要没删 .sublime-history/,快照还在;但换台电脑、重装系统、甚至只是把项目挪个位置,历史就断了。











