我已经设法使我的 Git 存储库陷入似乎无法恢复的状态。我正在寻找有关如何恢复存储库结构的建议。
提交获取评论包含我作品的最新版本。它驻留在分支上chaos(我出于沮丧而这样称呼它)
提交相当大的重构是main和chaos分支分歧的地方。
提交 来自 Synovo/send-request 的合并拉取请求 #5 是 chaos 和 main 之间的合并提交。根据定义,它领先于chaos
我的目标是(尽可能多地)恢复存储库的线性,使得分支chaos上的更改或多或少地基于主干。
我提到变基是因为我的第一个想法是
说实话,我不知道为什么这不起作用。大概是因为合并提交从未真正消失,而是被恢复了。
然后我尝试重置
这使得存储库处于可快速转发的状态,这样做时,我会在合并后返回到损坏的状态。
重要的是,我的所有更改都保存在我的提交中,我可以通过检查其哈希来获取它(编译并通过所有测试等,因此它是正确的)
我在下面附上了 git 图表屏幕截图来帮助说明我的问题。
在你提到它之前,是的,我知道这很混乱,我尝试了很多不同的方法,但都无济于事。
标有“获取评论”的提交是所需的提交。我想要的结构看起来像这样:
顺便说一句,这两个图的顺序相反。抱歉
git switch chaos
git reset --hard <sha of fetch comments>
二、修复大师:
git switch master
git reset --hard <sha of rather large refactor>
现在只需
git merge chaos
,您就会得到想要的图表。