我已经为这个问题苦苦挣扎了数小时。我的本地代码库中某个提交记录不知何故丢失了。
> git reflog expire --stale-fix --all
error: refs/tags/12.01.02 does not point to a valid object!
error: Could not read 95eeac3b5f441c9ebbd89508896c572e3eb17205
fatal: Failed to traverse parents of commit 6c24f6ea7c0452e70dea6332c6959dad6c71305f
并且
$ git fsck --full
Checking object directories: 100% (256/256), done.
Checking objects: 100% (159800/159800), done.
error: refs/tags/12.01.02: invalid sha1 pointer 95eeac3b5f441c9ebbd89508896c572e3eb17205
error: HEAD: invalid reflog entry 95eeac3b5f441c9ebbd89508896c572e3eb17205
我一直在寻找解决问题的方法,特别是我遇到了这个答案:
引用:
您可以尝试的第一件事是从备份中恢复丢失的项目。例如,查看是否有存储为.git / objects / 98 / 4c11abfc9c2839b386f29c574d9e03383fa589的提交备份。如果有,可以将其还原。
因此,我发现提交在GitHub上的远程库中。所以我在不同的目录中进行了全新的克隆,但是/objects大部分为空。有没有办法仅为一个提交重新生成对象文件?