最近,我们一直在将主题分支合并到我们的开发分支中。事情是这样的:在主题分支合并到开发分支(通过pull request
)之后,需要向该主题分支引入新的更改以修复某些问题。
是否可以发布另一个pull request
并让 git 完成其余的工作(基本上,所述主题分支合并 2 倍,甚至更多,到开发分支),或者reset
PR 并重新发布 PR 是必要的,以免搞砸事情?(似乎我们已经走了这条路,只是想澄清这是否有一些隐藏的副作用)。
如果reset
不可能,cherry-pick
会是一个更好的解决方案吗?
谢谢。
编辑#1:
似乎cherry-pick
比平常过程工作正常,但是,我担心它对正常合并过程的影响。
如果您的开发分支在 PR 之后没有新的提交,则可以reset
并重新执行 PR。这具有使提交历史记录比其他解决方案更干净的效果
在开发分支上发生新提交后重置意味着您将丢失这些新提交,因此不建议这样做。在这种情况下:
- 从主题分支中挑选问题修复
- 为问题修复创建一个新分支(蒂姆的建议)
- 从主题分支创建第二个 PR
都是可行的解决方案。
以上都不会为您提供提交历史记录(在 dev 分支上),其中与主题分支相关的所有提交都在一起。为此,您将需要rebase