Sublime如何设置文件自动备份 Sublime本地历史记录插件【安全】

9次阅读

sublime原生不支持自动备份,需组合配置与插件实现:启用save_on_focus_lost防丢,安装Local history插件存时间戳快照;二者不可混用,重要项目仍需git或外部备份。

Sublime如何设置文件自动备份 Sublime本地历史记录插件【安全】

Sublime 原生不支持自动备份,必须靠插件组合实现

sublime text 没有内置的「自动备份文件」或「本地历史版本」功能——它不会像 JetBrains 或 vs code 那样自动生成时间戳快照。所谓“自动备份”,其实是两个独立行为:auto_save(把当前编辑内容写回原文件)和Local History(在项目内保存副本快照)。两者不能混为一谈,也不能靠单个配置项开启。

save_on_focus_lost 实现最稳妥的防丢机制

这是 Sublime 原生最可靠、零依赖的“自动保存”方式:你切出窗口那一刻,所有已修改文件立刻落盘。它不刷磁盘、不卡 ui、不干扰 Git,适合绝大多数场景。

  • 打开 Preferences → Settings,在右侧用户设置中添加:"save_on_focus_lost": true
  • 顺手关掉这两个选项,避免覆盖风险:"hot_exit": false"remember_open_files": false
  • 注意:save_on_focus_lost 对新建未命名文件(untitled: 标签页)无效,这类文件必须先手动保存一次

Local History 插件实现真正的本地快照

这才是你想要的“历史记录”:每次保存或手动触发时,在项目根目录下生成 .sublime-history/ 文件夹,按时间戳存档副本,可双击对比、一键恢复。

  • 通过 Package Control 安装插件:Package Control: Install Package → 搜索并安装 Local History(作者 kemayo)
  • 默认每 2 分钟自动抓取一次,也可手动调用:Ctrl+Shift+P → 输入 Local History: Save Current File
  • 快照只响应 Sublime 内部编辑动作;若你用命令行直接改了文件,它完全感知不到
  • 不要把 .sublime-history/ 改到项目外路径,否则 Git 同步或换机器后历史就丢了

别让 AutoSaveLocal History 互相打架

两个插件同时开,容易在 1 秒内连发「保存原文件」+「存一份快照」,造成大量几乎相同的时间点冗余版本,还可能因文件被 webpack/python 占用导致静默失败。

  • 如果只想要防崩溃/断电丢失,save_on_focus_lost + Local History 就够了
  • 如果硬要开 AutoSave 插件,请禁用 "auto_save_on_modified": true,只留 "auto_save_when_focus_lost": true
  • Local History 的快照不是备份,它不加密、不压缩、不校验,仅用于临时回滚——重要项目仍需 Git 提交或外部备份

关键点其实就一个:Sublime 的“历史记录”不是系统级监控,而是编辑器事件驱动的快照。你关掉它、删掉 .sublime-history/、甚至重装插件,都不会影响原文件——但快照一旦丢失,就真的没了。

text=ZqhQzanResources