操作系统重置后的“不是git存储库”

今天早上,我的Windows 10崩溃,并重新启动,一旦我提起我的笔记本电脑的屏幕。 没有特别的活动正在进行,所以我不认为有重大的磁盘活动。

然而,我的主要Git回购之一,重置后崩溃。 这是我试过的:

  • $ git status fatal:不是git仓库(或任何父目录):.git
  • $ git init重新初始化现有的Git仓库…… /。git /
  • $ git status fatal:不是git仓库(或任何父目录):.git
  • 循环

我不认为我有提交的提交,所以擦除和从远程克隆应该工作。

不过,在这种情况下,我可以问问如何恢复现有的Git存储库( .git目录仍然存在, chkdsk报告确定)?

[添加]阅读这个,但不适用于我的情况(我无法恢复回购)

正如kabanus在评论中所说,在继续之前(和/或使用一些其他现有的克隆作为备份),您一定要保存所有可能的东西。

当Git抱怨这个时,通常意味着.git/HEAD文件已经丢失。 如果你创建一个新的HEAD文件,内容为: ref: refs/heads/master ,Git可以恢复所有的东西。

由于HEAD是存储库中最活跃的文件,因此最容易被OS错误或电源故障破坏。 当Git相信一个.git目录是一个存储库时,它也是一个重要的文件:如果该目录包含一个名为HEAD的文件(以及其他一些关键项目),那么它就是一个存储库; 如果不是,它不是一个存储库。