我有一个需要帮助的工作流程。通常我会在 Github 上创建一个分支并开启一次拉取请求(标准程序)。但是,有时候我想创建另一个依赖于之前仍然开放的 PR 的 PR。我希望在第一个 PR 仍然开放的时候对第二个 PR 进行审查。
为了做到这一点,我首先会创建另一个分支(基于之前的分支),并开启一个请求将更改合并到第一个分支中。同时,如果我对第一个分支有更改(以解决第一个 PR 的评论),我会将它们提交到第一个分支,然后将它们变基到第二个分支中。然后,我会强制推送第一个分支和第二个分支到它们的远程上。
但问题是,第二个 PR 有时会显示第一个分支的更改。它是线性历史记录,我认为 Github 很困惑。我尝试使用奇怪的方法,在第二个 PR 中将分支更改为其他共同祖先分支,然后再将其更改回第一个分支,突然间从不应出现的第一个分支的更改消失了。
是否有方法可以防止发生这种问题?我从不希望第一个 PR 的更改出现在第二个 PR 中(作为提交)。我只希望第二个 PR 看起来像是将更改提交到第一个 PR。
在第一个 PR 合并后,我通常会进入第二个分支并 rebase --onto our_main_branch
,然后更新 Github 上的第二个 PR,以请求将更改合并到 our_main_branch
。我也欢迎任何有关更好工作流程的评论。
main
分支需要审核。我应该澄清这一点。这是我们公司内部的开发,不是开源的。 - imagineerThat