notepad++无内置代码修改记录功能,仅依赖操作系统修改时间、git日志或手动配置的自动备份文件;备份需启用并选择时间戳模式,路径为%appdata% otepad++ackup,文件名含时间戳;异常退出恢复依赖session.xml和recovery_*.tmp,需勾选“remember current session”;compare插件对比需另存当前文件避免路径冲突。

Notepad++ 本身不存代码修改记录,别指望它像 Git 那样显示“改了哪几行”
Notepad++ 没有内置的版本历史、时间轴或快照回溯功能。你右键文件看到的“Git Show History”来自插件,不是编辑器原生能力;标签页上也不会显示“上次保存前 vs 当前”的差异。所谓“历史记录”,实际只有三类可查来源:操作系统文件修改时间、Git 仓库日志、Notepad++ 自动备份文件。前两者反映“何时改”,后者才可能帮你找回“改了什么”——但前提是提前配置过,且没被清空或覆盖。
从 backup 目录手动翻出最近一次自动备份文件
Notepad++ 的 backup 目录是唯一可能存有旧内容的地方,但它只对「已保存过的文件」生效,且依赖明确配置。常见失效场景是:开了“启用备份”却没选具体模式,或路径含中文/空格导致静默失败。
- 确认备份已真正启用:设置 → 首选项 → 备份 → 勾选
Enable backup,并必须同时选择With timestamp(推荐)或Simple backup - 默认路径为
%APPDATA%Notepad++ackup(即C:Users\AppDataRoamingNotepad++ackup),该目录需手动开启“显示隐藏的项目”才能看见 - 文件名带时间戳,例如
myscript_20260617_221433.py或config_backup_20260618_052311.ini,按“修改日期”倒序排列,优先看最近 24 小时内的 - 别双击打开:直接右键 → “使用 Notepad++ 打开”,避免 Windows 用记事本解析导致乱码
崩溃后未弹恢复提示?先检查 session.xml 和 recovery_.tmp 是否完好
Notepad++ 异常退出后没弹“恢复上次会话”,大概率不是数据丢了,而是会话快照机制没触发或文件损坏。它不靠 .bak 文件恢复标签页,而是读取 session.xml 和 recovery_*.tmp ——这两者在 %APPDATA%Notepad++ackup 下共存,但作用完全不同。
-
session.xml记录上次打开哪些文件、标签顺序、光标位置;若被覆盖或格式损坏,Notepad++ 会静默跳过恢复(不报错也不提示) -
recovery_*.tmp是内存快照的二进制 dump,不能直接用文本编辑器打开;必须通过 Notepad++ 内置的「文件 → 会话恢复」调用 - 启动 Notepad++ 后没弹提示,先确认设置 → 首选项 → 备份 → 已勾选
Remember current session for next launch,再彻底退出进程(任务管理器杀掉所有notepad++.exe)后重试 - 如果
session.xml已损坏,可用记事本打开它,搜索你记得的文件路径片段;若找不到,检查回收站里是否有旧版session.xml
Compare 插件对比两个版本,但必须绕过“同路径禁止重复加载”限制
Compare 插件不能直接对比“当前文件”和“它自己”,因为 Notepad++ 默认阻止同一路径文件打开两次。你点“Compare”菜单灰掉,或弹出“Files are identical”,说明它根本没拿到两个独立文档句柄。
- 正确流程:先用
File → Save As…把当前文件另存为临时名(如main_v2_temp.js),再回到原文件,最后用Plugins → Compare → Compare - 务必统一编码:如果原文件是 UTF-8-BOM,另存时选 Encoding → Convert to UTF-8,否则整页标红——Compare 不识别编码差异
- 别信 Document Map 或 Change Log 插件能看历史:前者只是滚动缩略图,后者只记录你手动插入的
# 2026-06-18: 调整正则匹配逻辑这类注释,不自动生成任何快照 - 真要查“昨天改了什么”,最稳路径是终端执行
git diff HEAD~1 HEAD -- path/to/file.py,复制输出到新 Notepad++ 标签页查看高亮差异
真正的麻烦在于:Notepad++ 从不主动告诉你它没备份、没写快照、没读取 session.xml ——它只是安静地什么都不做。你得自己知道去哪找、怎么验证、哪些开关必须同时开,否则恢复动作永远卡在第一步。











