如何在Git中的"覆盖"分支中检索提交?

Joh*_*her 4 git branch

背景

我只与一个分公司合作 - 主人.

        3---------2---------
                            |
6-------5---------4---------1----------
Run Code Online (Sandbox Code Playgroud)

我做了提交1-3,然后意识到我想从提交1开始工作以进行下一部分工作.我检查了提交1,然后提交了4-6.糟糕!提交3包含我需要的一些重要信息.

问题

当我在GitX中执行git日志或查看所有分支时,我看到的是:

6-------5---------4---------1----------
Run Code Online (Sandbox Code Playgroud)

如何将提交3的位合并回提交6?(这叫做HEAD吗?)

我丢失了2和3的提交吗?

我知道不做新分支是我的错,但这是否意味着这些提交丢失了?

我仍然是一个Git新手(尽管使用它大约6个月)仍然发现它真的令人困惑,所以请温柔!

Ale*_*vik 15

你没有丢失提交.它们在reflog中可用.

运行git reflog并查找提交.

如果您希望结果看起来像6-5-4-3-2-1,请检查6并重新打开它3.