【问题标题】:Stash changes during conflict resolution在冲突解决期间存储更改
【发布时间】:2017-04-30 23:38:24
【问题描述】:

我正在使用git cherry-pick 将一个复杂功能重新定位到另一个分支。在尝试解决大提交中的冲突时,我发现我错过了应该首先应用的其他提交。

我不能 stash 当前状态,应用另一个提交,然后执行 stash pop。
我可以做cherry-pick --abort,应用另一个提交,然后再次挑选它,但我会失去那些已解决的冲突。

处理这种情况的最佳方法是什么?

【问题讨论】:

  • 是“应该”还是“必须”?如果是前者,请继续,然后在您提交决议后纠正情况。
  • 错过的提交已经处理了一些冲突,我不必手动处理它们。
  • 我过去做过大的冲突合并,情况与您描述的情况相同。我硬着头皮完成了合并。然后倒带,应用有用的其他提交,然后重新合并。幸运的是,rerere 机制再次自动解析了许多提交。

标签: git cherry-pick


【解决方案1】:

在j6tadvice 之后,您可以完成然后倒带,应用其他提交并再次选择。

我们的想法是确保git rerere 处于活动状态,以避免重新解决合并冲突。

如果你没有激活rerere,你有rerere-train.sh script I mentioned before,为了不忘记你第一轮合并的冲突解决。

【讨论】:

    猜你喜欢
    • 2012-05-28
    • 2020-10-07
    • 1970-01-01
    • 2011-01-31
    • 2016-08-08
    • 1970-01-01
    • 1970-01-01
    • 2010-09-14
    • 2011-01-12
    相关资源
    最近更新 更多