Local History 插件仅在文件已保存、路径完全匹配且插件启用可写时才生成快照;需手动验证:改行→Ctrl+S→查控制台日志→右键调出历史;恢复须在原路径新建同名文件再保存;BackupOnSave与Simple History不可共存。

Sublime Text 本身不记录代码修改历史,所谓“追踪”必须靠外部机制补足——没有 Git 就没有提交历史,没保存过就不可能有本地快照,装了插件但路径/权限/触发时机不对,照样看不到任何记录。
Local History 插件为什么右键没反应或列表为空
空列表不是插件失效,是它根本没写入快照。Local History 只在三个条件同时满足时才工作:文件已保存(不再是 Untitled)、当前路径与首次保存路径完全一致(大小写、斜杠方向、扩展名全匹配)、插件启用且磁盘可写。常见卡点:
- 文件刚新建、还没按
Ctrl+S,插件直接忽略 - 改完用
Ctrl+Z撤回但没再Ctrl+S,不会生成新快照 - 删掉文件后在别处新建同名文件(比如从
/src/main.py删了,又在/tmp/main.py新建),路径不一致,历史不关联 - Windows 下以管理员身份运行 Sublime,但
.sublime-history/落在用户目录,权限被拦截(控制台无LocalHistory: saved snapshot for日志)
怎么确认 Local History 真正在工作
别等自动备份,手动验证最可靠。操作顺序必须严格:
- 打开一个已有路径的文件(如
index.js),改一行 →Ctrl+S - 再改一行 →
Ctrl+S - 按
Ctrl+`打开控制台,应看到至少两条LocalHistory: saved snapshot for index.js@2026-06-18-15-20-33类日志 - 右键编辑区 →
Local History: Show History,此时应列出带时间戳的条目
若仍为空,检查 Preferences → Package Settings → Local History → Settings 中 "enabled": true 和 "auto_save": true 是否都为真;另外确认 .sublime-history/ 所在磁盘空间充足、用户目录有写权限。
恢复已删除但曾保存过的文件,必须走对路径
Local History 不依赖当前文件是否存在,只认完整路径。恢复流程不可跳步:
- 在**原路径**新建一个同名空文件(例如原路径是
/project/src/utils.js,就得新建到这个精确位置) -
Ctrl+S保存它,让插件“认领”该路径 - 右键 →
Local History: Show History,历史版本才会出现
点击某条快照会在新标签页以只读方式打开;想覆盖当前内容,右键选 Replace Current File —— 注意:它会直接覆盖当前所有未保存改动,无二次确认。
BackupOnSave 和 Simple History 别混用
二者机制冲突,共存会导致菜单异常或重复备份:
-
BackupOnSave:每次Ctrl+S都在指定目录生成独立副本(如main.py.2026-06-18-15-20-33),适合脚本扫描、手动diff或外部工具处理 -
Simple History:版本存在 Sublime 的本地数据库(%APPDATA%\Sublime Text\Packages\User\Local History\或~/Library/Application Support/Sublime Text/Packages/User/Local History/),不产生额外文件,右键调用轻量,但 Git 或 shell 脚本无法直接读取
如果你刚删掉关键逻辑、需要快速比对两版差异,BackupOnSave 更可控;如果只是偶尔点开看看昨天改了哪段,Simple History 更省心。二者只能选其一。
真正容易被忽略的,是“保存”这个动作本身——它既是 Git 提交的前提,也是 Local History 快照的唯一触发器,更是 Sublime 缓存恢复的唯一锚点。所有历史能力,都建立在你按下 Ctrl+S 的那一瞬间。


















