为了账号安全,请及时绑定邮箱和手机立即绑定

在git中重新执行一个恢复的合并。

在git中重新执行一个恢复的合并。

Git
qq_遁去的一_1 2019-07-10 15:12:59
在git中重新执行一个恢复的合并。我在这里遇到了一个小问题:我有一个特定问题的分支。28s在吉特,我和将军合并了develop分支。原来我做得太快了,所以我用git-还原来撤销合并。然而,现在是合并的时候了。28s进develop,但是git-Merge命令看到了原始的合并,并高兴地宣布一切正常,分支已经合并。我现在该干啥?创建一个“还原”28s->开发“提交?似乎不是一个很好的方法,但我现在无法想象其他的方法。
查看完整描述

3 回答

?
墨色风雨

TA贡献1853条经验 获得超6个赞

你必须“还原”。取决于你是如何恢复的,它可能并不像听起来那么容易。看关于这一专题的正式文件.

---o---o---o---M---x---x---W---x---Y
              /
      ---A---B-------------------C---D

允许:

---o---o---o---M---x---x-------x-------*
              /                       /
      ---A---B-------------------C---D

但这一切都起作用了吗?当然有了。您可以还原合并,从纯粹的技术角度来看,GIT非常自然地完成了合并,没有真正的麻烦。
它只是将其视为从“合并前的状态”更改为“合并后的状态”,仅此而已。
没有什么复杂的,没有什么奇怪的,没有什么真正危险的。GIT甚至不用考虑就会做这件事。

所以从技术角度来看,恢复合并没有什么问题,但是从工作流的角度来看,这是你应该尽量避免的事情。.

例如,如果您发现一个合并到主树中的问题,与其恢复合并,不如尝试真的:

  • 把问题平分到你合并的分支中去,然后解决它,
  • 或者尝试恢复导致它的个人提交。

是的,它更复杂,而且不,它并不总是起作用(有时答案是:“哎呀,我真不该把它合并,因为它还没有准备好,我真的需要撤销它。所以你真的应该恢复合并,但是当你想要重新做合并的时候,你现在需要通过还原来完成它。


查看完整回答
反对 回复 2019-07-10
?
眼眸繁星

TA贡献1873条经验 获得超9个赞

假设你有这样的历史

---o---o---o---M---W---x-------x-------*
              /                      
      ---A---B

其中A,B失败提交,W-是M的恢复

因此,在我开始修复发现的问题之前,我选择了我的分支。

git cherry-pick -x W

然后我回到我的分支

git revert W

在我能继续修复之后。

最后的历史可能看起来是:

---o---o---o---M---W---x-------x-------*
              /                       /     
      ---A---B---W---W`----------C---D

当我发送一个PR时,它将清楚地显示PR正在撤消、还原和添加一些新的提交。


查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 1056 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信