已终止git推送进程,丢失所有文件

已终止git推送进程,丢失所有文件,git,Git,我当时正在推git存储库,但时间太长了,我用^C终止了它 Personas-MacBook-Pro:ReCDroid personanongrata$ git push Enumerating objects: 12911, done. Counting objects: 100% (12911/12911), done. Delta compression using up to 8 threads Compressing objects: 100% (12413/12413), done.

我当时正在推git存储库,但时间太长了,我用^C终止了它

Personas-MacBook-Pro:ReCDroid personanongrata$ git push
Enumerating objects: 12911, done.
Counting objects: 100% (12911/12911), done.
Delta compression using up to 8 threads
Compressing objects: 100% (12413/12413), done.
^Citing objects:  16% (2192/12910), 1.34 GiB | 702.00 KiB/s      
Personas-MacBook-Pro:ReCDroid personanongrata$ git status
根据,终止推送进程应该是安全的,但我的计算机上的所有数据都已被删除。我怎样才能找回它? 谢谢

看起来像是文件系统或磁盘问题。 证据1:“时间太长了”

为什么花了这么长时间?事实上是挂着的吗?硬盘损坏/出现故障

证据#2:
git状态
永不返回。没有错误消息。

我假设控制台输出的最后一行是
git status
,没有输出,因为它也挂起了

这表明文件系统级损坏或磁盘/SSD故障

专家证人

git不太可能做到这一点

  • (请注意,OP和评论员报告的原因不是git,而是一些硬重启和其他导致腐败的因素)

  • 撇开磁盘故障不谈:不,不可能通过git命令损坏远程git存储库。甚至不可能仅通过git命令损坏本地git存储库–搜索和替换当然不是没有git命令

    但是,通过运行git reset--hard,使reflog过期,然后对存储库进行修剪和垃圾收集,您可能会丢失提交。但话说回来,这不是一个损坏的git存储库…它只是丢失了您从中删除的数据

判决


备份驱动器以及分区和驱动器上的运行检查。请尝试以上链接中的解决方案

git状态现在说什么?目录包含什么?你确定这是gits的错吗?可能是外部进程删除了相关文件。您显示的是“git status”命令,而不是它返回的内容。这就像是下一季的悬念吗?我试着恢复承诺,但没有任何效果。我是个笨蛋,不小心关闭了终端会话,所以失去了所有输出。现在git在branch master上说,您的分支是“origin/master”最新的。未跟踪的文件:(使用“git add…”包含在将提交的内容中)。DS_存储工件评估/比较/提交时未添加任何内容,但存在未跟踪的文件(使用“git add”跟踪)但是这些文件夹/文件只是最初存在的一小部分,也就是说,git ls tree-r——仅命名的头。你现在看到你所有的文件了吗?@matt如果它像他的
git-push
git-status
一样挂起,那就是我答案的证据。