昨天,当我在工作时,我正在开发我的家用计算机上的项目。问题是,当我试图克隆回购日食会崩溃。所以相反,我手动下载并初始化回购,然后强制推送到我的家用电脑。这删除了回购中的所有历史和文件。我做了一些搜索,并尝试恢复提交,但它的推动抹去了提交历史,所以我只能回到强制推送提交。获得之前在git存储库上被删除的提交
我有一台电脑在家里,因为这个错误还没有拉动更新,我能够得到它的提交SHA。我在网络上使用它,发现它的最后一个版本仍然存在,但我无法提交该提交,因为它被“删除”并且不会显示在回购记录中。有没有一种方法可以使用最后一次良好提交中的SHA并使主分支恢复我的历史记录?
当我做git checkout [我的好sha1想要恢复]它说参考不是树 – ProgrammingCuber
它也没有显示出来,当我做了git reflog。 – ProgrammingCuber
如果您无法签出提交SHA,则表明提交未存储在本地git存储库中。因此,您可以从其他计算机上将其上传到中央存储库(我假设您使用的是类似github的东西)。当你在机器上签出提交/分支时,你通过'git checkout -b“backup_branch”'创建一个新的分支。然后通过git push将它推送到中央存储库。 在另一台计算机上,然后运行'git pull',以获取新的更改。然后'git checkout“backup_branch”'。您现在应该已经检出了所需的提交。 –