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

Mac本地XCode项目删除.git后丢失提交,能否恢复?

本地Git仓库回滚后删除.git导致代码丢失的恢复方案(Mac/XCode环境)

以下是针对你情况的可行恢复步骤,按优先级尝试:

  • 优先检查XCode自动快照
    XCode会自动为项目创建版本快照,和Git无关。打开你的XCode项目,点击顶部菜单栏 File > Revert To > Browse All Versions,在弹出的时间线视图里查找回滚操作之前的版本,找到后点击"Restore"就能恢复对应状态的代码。

  • 尝试Time Machine恢复
    如果你开启了Mac的Time Machine备份,打开Time Machine导航到项目所在文件夹,选择删除.git之前的时间点,恢复整个项目文件夹(包含原.git目录)。恢复后在项目目录执行git reflog,就能找到被回滚的提交记录,再用git cherry-pick <commit-hash>或者git reset --hard <commit-hash>恢复代码。

  • 检查Git残留数据
    即便删除了.git文件夹,磁盘上可能还残留Git的对象数据(只要没被新数据覆盖)。在项目目录打开终端,执行:

    git fsck --lost-found
    

    命令会在当前新建的.git/lost-found目录下生成丢失的对象文件。你可以用git show <对象哈希值>查看内容,找到目标提交后提取代码。

  • 查看XCode DerivedData临时文件
    打开XCode偏好设置(Preferences > Locations),找到DerivedData的路径,进入对应项目的文件夹,里面可能有编译过程中保留的代码片段或临时文件,能帮你找回部分丢失的内容。

如果以上方法都没有效果,那数据大概率已经彻底丢失——因为你回滚后删除了包含提交记录的原.git目录,且无法恢复该目录,Git没有了存储提交对象的基础,就无法找回被回滚的更改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 11:12:08