有没有办法恢复丢失的 git 提交?

Is there anyway to recover a missing git commit?

我用超然的头脑工作的时间比我想象的要长。我一直很懒,推迟合并回我原来工作的分支,最后决定是时候做我应该做的事了。

所以我认为最好的方法是像往常一样遵循相同的程序。首先,我获取并拉取了该分支的最新更改,修复了合并冲突,然后我将我要合并的分支合并到我首先提交的提交中。 (事后看来,我什至不确定在更彻底地思考之后我在这里做了什么)。然后我记下了我最近所做的所有当前工作的提交的提交 ID,然后检查了我要将其合并到的分支......那是我胃痛的时候脚。提交消失了。我尝试在 SourceTree 中搜索 id 但一无所获...我在任何地方都找不到我的作品。

我是不是把所有这些工作都搞砸了,还是有什么方法可以恢复它?..我的印象是,一旦 Git 提交,它就一直在那里,就像一个保存按钮。

对于作为某个点提交的所有更改,git 有一个很大的内置安全网:reflog。

运行 :

git reflog

您应该会在那里看到您要查找的提交。