我有点傻瓜,换了一个完全错误的分支,拉,然后合并我们的开发分支,让一切都变得最新。事实证明,我改用的分支机构在几个月内没有被触及,并且由一位名叫我不知道且不再在该公司工作的开发人员工作。
鉴于我合并了我们的dev分支,当我执行git log
时,我会看到所有人提交的allllll。所以我不知道最后一次提交在这个分支上是什么。有没有办法在我目前正在my_feature
分支上查看仅提交的提交?
目标是撤消我所做的所有伤害并将其恢复到我找到它时所处的状态。
编辑:
在下面添加了答案。
答案 0 :(得分:0)
经过一番观察,我发现this question显示了如何在git log
git log --graph --all --decorate
使用该信息,就像滚动回日志一样简单,直到找到引用错误合并的分支的第一个提交。
复制提交哈希,然后您可以通过
重置所有内容git reset --hard {commit hash}
答案 1 :(得分:0)
对于以令人兴奋的方式移动HEAD
的操作,包括合并,HEAD
的先前位置记录在ORIG_HEAD
中。这使得在将其他分支合并到my_feature
之前,很容易回到状态:
git reset --merge ORIG_HEAD
Git在不同的点上保留了一些其他类似的特殊符号引用。请查看gitrevisions
man page。
答案 2 :(得分:0)
听起来你想要的是跟踪提交历史记录向下只有一个父的合并提交。如果您在功能分支上,并且只想查看该功能的提交,请执行
git log --first-parent my_feature