You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

误执行git rm -r *后,如何找回丢失的Laravel应用文件?

如何恢复误执行git rm -r *删除的Laravel文件?

别慌!这种误操作其实有不少补救办法,咱们一步步来处理:

一、如果文件已经提交到Git仓库

这是最幸运的情况,只要这些被删的文件之前执行过git add和git commit,Git就能帮你一键恢复:

  • 直接在项目根目录执行:
    git checkout HEAD -- .
    
    这个命令会把当前分支最新提交(HEAD指向的版本)里的所有文件还原到工作区,覆盖现在的状态。
  • 如果你想恢复到某个特定的历史提交,也可以把HEAD换成对应的提交哈希值,比如:
    git checkout a1b2c3d -- .
    
    (提交哈希可以用git log查看)

二、如果文件还没提交到Git仓库

要是有些文件是刚创建的、还没加入Git版本控制的,那Git本身没法帮你恢复,这时候得靠系统级的恢复工具:

  • Windows:如果之前开启了「文件历史记录」,可以直接从备份里恢复;也可以用Recuva这类第三方工具扫描磁盘找回。
  • macOS:用Time Machine的备份快照恢复,或者Disk Drill这类工具扫描恢复。
  • Linux:可以用testdisk、photorec这类命令行工具来扫描磁盘分区,找回被删除的文件。

三、Laravel特有的注意事项

恢复完之后,记得检查几个关键文件/目录:

  • .env文件:这个文件一般不会被提交到Git,要是被删了,得重新配置数据库、APP_KEY等信息,或者从你本地的备份里找回。
  • storage目录:如果里面的日志、缓存文件没被提交,恢复后可能需要重新生成目录结构,比如执行php artisan storage:link重新创建存储软链,确保静态资源访问正常。

下次避免误操作的小技巧

  • 执行git rm这类危险命令前,先加--dry-run参数测试,比如:
    git rm -r * --dry-run
    
    这个命令会列出要删除的所有文件,但不会真的执行删除,确认没问题再去掉--dry-run执行。

内容的提问来源于stack exchange,提问作者Inertia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:31:03