git提交丢失-我做错了什么?

git提交丢失-我做错了什么?,git,Git,我有一个本地git存储库。我想尝试一些更改,所以我进行了分支和测试。然后我不喜欢这个测试,所以我删除了这个分支。然后我发现除了第一次,我所有的承诺都没有了 下面是我使用的git命令 git checkout -b testing 某些文件在测试分支上进行了多次提交编辑 git commit -a 然后我不喜欢这些改变,想放弃这些改变 git checkout master git branch -d testing 此时有一条警告说测试分支没有完全合并。 所以我做了 然后我在master上

我有一个本地git存储库。我想尝试一些更改,所以我进行了分支和测试。然后我不喜欢这个测试,所以我删除了这个分支。然后我发现除了第一次,我所有的承诺都没有了

下面是我使用的git命令

git checkout -b testing
某些文件在测试分支上进行了多次提交编辑

git commit -a
然后我不喜欢这些改变,想放弃这些改变

git checkout master
git branch -d testing
此时有一条警告说测试分支没有完全合并。 所以我做了

然后我在
master
上的所有提交都消失了


出现了什么问题,是否可以恢复?

可以通过reflog恢复这些问题

尝试
git reflog
并查找提交,然后尝试直接签出给他们,这样可以让你找回它们

这是意料之中的。您删除了提交到的分支,为什么提交没有消失

您没有向
master
提交任何内容,因此
master
保持不变

您可能还想从阅读这篇文章开始,因为您似乎混淆了<代码> Git < /C> >如何工作。


再次总结:没有什么错。你从来没有来过大师,你对你的分支机构忠心耿耿。Git然后警告您,您将丢失这些提交,因为它们没有被推送到任何地方,而您忽略了警告。

根据您在这里介绍的描述,您没有在主服务器中执行任何提交。到底是什么丢失了?可能是重复的请发布
git reflog
的输出,并显示哪些提交丢失了。您甚至认为丢失了什么?@DerekS,谢谢提供的链接很有用。谢谢。在尝试了git reflog并查阅了这本书之后,我发现这是分离的头部状态。我以为我已经向师父承诺了,但不知怎的,我的头被分开了。但是
git reflog
拥有所有提交,因此我可以恢复更改。
git branch -D testing