local history能恢复已删除文件,因其自动保存删除前的完整快照,每10分钟及关键操作时触发,不依赖git,作用于整个项目目录,默认保留5天。

Local History 是 PhpStorm 自动维护的本地快照,不依赖 Git,删了文件也能找回来——前提是没清空历史或重装 IDE。
为什么 Local History 能恢复已删除的文件
PhpStorm 默认每 10 分钟自动保存一次项目状态(含新增、修改、删除),同时在关键操作(如执行重构、提交、关闭文件)时也触发快照。删除文件时,它不会立刻从磁盘抹除记录,而是把“删除前一刻”的完整文件内容存进本地历史。
- 不依赖版本控制:即使没用 Git,也能恢复
- 作用范围是整个项目目录(包括未加入项目的文件)
- 默认保留最近 5 天的历史(可调,见下文)
- 注意:若手动清过
.idea/shelf/或执行过File → Manage IDE Settings → Restore Default Settings,历史会丢失
怎么打开并定位被删的文件
分两种情况操作:
- 如果文件还在项目里(比如你只是删了部分内容,但文件还存在):右键该文件 →
Local History → Show History - 如果文件已从项目中彻底消失(连条目都没了):右键项目根目录(或父级文件夹)→
Local History → Show History
打开后左侧显示变更列表,右侧是对应时间点的文件树。重点找带 Deleted 标记的条目,或按时间倒序滚动,找到删除操作发生前的最后一版。
恢复时容易踩的坑
直接右键点击历史记录里的文件 → Revert 看似简单,但有三个关键细节常被忽略:
-
Revert是覆盖当前文件——如果当前文件已被改写过,恢复会丢掉后续改动;建议先另存为备份再操作 - 若恢复的是整个文件夹,
Revert会还原该路径下所有被删/修改的文件,不是单个文件粒度 - 历史记录里看不到文件内容预览,无法确认是不是你要的那一版;可双击某次快照中的文件,在右侧面板里查看具体内容再决定是否恢复
- 默认历史保留天数是 5 天,如果删文件超过这个时间,记录可能已被自动清理;可通过
Settings → Appearance & Behavior → System Settings → Local History把Keep local history for (days)改大(比如设为 30)
Local History 恢复不了时,还有哪些路可走
当 Local History 为空或找不到目标版本,别急着认命,按优先级试下面这些:
- 先查
View → Recent Changes(快捷键Ctrl+Shift+Alt+Z/Cmd+Shift+Alt+Z),这里按分钟级记录刚发生的删除动作,比 Local History 更细、更及时 - 如果项目用了 Git,运行
git status—— 若显示deleted: xxx.php,直接git restore xxx.php(Git 2.23+)或git checkout HEAD -- xxx.php - 检查系统临时目录:
/tmp/(Linux/macOS)或%TEMP%(Windows)里有没有以phpstorm_或___jb_old___开头的临时文件,部分版本会在那里留副本
Local History 不是保险箱,它只存变更快照,不保证永远在线。真正防丢的核心,还是把 git add && git commit 变成肌肉记忆——历史再全,也救不回你连续三天没提交的代码。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











