SourceTree 丢失了所有分支和提交

SourceTree lost all branches and commits

SourceTree 上发生了一件随机的事情,昨天工作正常,但今天早上加载它来做更多的工作,一切都消失了。 SourceTree 现在要我再次提交所有内容,就好像这是第一次提交一样。

奇怪的是,终端中的 运行 git log --all 确实显示了所有提交。我在尝试 git 正常登录时收到此消息。

fatal: bad default revision 'HEAD'

有什么方法可以修复这个问题,这样我就可以看到我的所有分支并再次提交。

对于在这里遇到过这个问题的任何人来说,我是如何通过拼凑其他各种帖子来解决这个问题的。

首先你需要得到你的最后一次提交,添加 --all 对我有用,否则我会得到 "fatal: bad HEAD" 错误。

git reflog --all

然后您需要检查以确保您有 HEAD 文件。如果不是,我通过执行以下操作重新创建了一个:

echo ref: refs/heads/master >.git/HEAD

完成此操作后,您应该能够硬重置为最近的提交:

git reset --hard 73b9363

将 --hard 之后的提交 ID 替换为您的 git reflog --all 中最新的提交。