笔记不小心删了怎么办——我的知识库三层「文件找回」方案

系列上一篇讲了 Canvas 怎么用来做串联和头脑风暴,这篇聊个实用的事:笔记丢了怎么找回来。

用知识库时间长了,有些问题迟早会遇到。整理文件夹时手快删错了文件。编辑保存完发现改的内容是错的。不同设备同步冲突,文章丢了半篇。

我刚用 Obsidian 那会儿,这些问题遇到过好几次。每次要么翻备份,要么碰运气。后来花时间搭了一套方案,现在十分钟内就能搞定。

这篇说下三层体系,以及怎么防。

第一层:Obsidian 回收站

Obsidian 设置里有个选项叫「删除文件设置」。默认是「移到系统回收站」。建议改成「移到 Obsidian 回收站」。

系统回收站清空就没了。Obsidian 回收站在 vault 根目录生成 .trash/ 文件夹,文件按原始路径存放,不会被自动清理。

设置路径:设置 → 文件与链接 → 删除文件设置 → 选「移到 Obsidian 回收站」

找回文件也简单。到 .trash/ 里按目录找,复制回原位置就行。

两个注意事项。

一是 .trash/ 默认是隐藏文件夹,需要在 Obsidian 里开启「显示隐藏文件」才能看到。

二是它不会自动清理。每月进去看一次,把确定没用的清掉。

Obsidian 回收站设置步骤
第二层:Syncthing 版本历史

如果用了 Syncthing 同步,又多了一层保障。

Syncthing 默认开启文件版本控制。两台设备同步同一个文件时,旧版本不会直接被覆盖,而是存到 .stversions/ 文件夹里。

举个例子。你在电脑上编辑保存笔记,同步到手机。在手机上又改了一版,同步回电脑。第二次改的内容需要恢复时:

1. 打开 vault 目录下的 .stversions/
2. 按路径找到文件
3. 里面可能有多个旧版本,按时间排列
4. 找到修改前的版本,复制出来替换当前文件

Syncthing 默认保留最近 5 个版本。日常使用够用了。

Syncthing 版本恢复步骤
第三层:Git 版本仓库

前两层覆盖了手误删和同步冲突两种场景。更严重的情况呢?批量误修改,或者 .stversions/ 本身也被同步覆盖了。

这时候需要 Git。

在知识库根目录初始化一个 Git 仓库,每天自动提交一次。

提交脚本可以这样写:

cd /path/to/your/vault
git add -A
git commit -m "daily backup $(date +%Y-%m-%d)" --allow-empty

放到 cron 里每天凌晨跑。配合远程仓库,就有完整的时间线备份。

回滚到某个版本时:

# 查看提交历史
git log --oneline

# 恢复某个文件
git checkout <commit-hash> -- path/to/file.md

好处是细粒度控制。能看每次改了哪些内容,能恢复到任意时间点。

不过有个坑:.obsidian/ 的配置也一起提交了。换设备克隆仓库时可能会有配置冲突。建议在 .gitignore 里加上 .obsidian/,或者单独管理配置。

Git 版本仓库方案

怎么选

三层不是都要上。看自己的情况选。

日常使用:第一层就够了。回收站覆盖 90% 的误删。

多设备同步:加第二层。.stversions/ 处理大部分同步冲突。

重度笔记用户:三层全上。Git 给的是后悔药,只要提交了就能回退。

建议从第一层开始用,用熟了再加。一次搭三层容易乱,出了事不知道从哪找。

前几篇聊了画布、同步、模板、捕获。系列还剩个有意思的话题:笔记怎么和 AI 联动得更深。后续来说说。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部