在等待审阅者合并拉取请求时,我应该从分支分支吗?

时间:2021-06-10 04:45:04

标签: git

因此,我在我的 ticket-3 分支中创建了一个拉取请求,我的审阅者审查并发现了一件小事需要我进行更改。我已经进行了这个更改,推送了提交,现在只是等待审阅者批准合并请求。我确信不会对拉取请求进行任何其他更改,并且希望在我的应用中处理一项功能。

解决这个问题的最佳方法是什么?我应该从我的 ticket-3 分支创建另一个分支吗?如果我这样做,一旦 ticket-3 分支与 main 分支合并,新分支会发生什么?

我确定这有一个常见的做法,但是我还没有开发工作,所以不确定它可能是什么。我也找到了 this,但答案似乎不是分支分支...

感谢并感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

不要从依赖于待处理拉取请求的票证开始。这可能会导致严重的并发症,尤其是在拉取请求被拒绝或大幅更改的情况下。功能分支需要独立。如果依赖关系太紧以至于没有之前的拉取请求你就无法继续,这应该是拉取请求的一部分(一个拉取请求可以满足多张票)。

答案 1 :(得分:1)

如果你从 ticket-3 创建一个分支,而 ticket-3main 合并(非快进),你将不得不在 {{1} 之上重新建立它的基础} 最终。

main

如果 m--m--m--m--m---M (main) \ / 3--3--3--3 (ticket-3) \ 4--4 (ticket-4) git rebase --onto main ticket-3 ticket-4 m--m--m--m--m---M (main) \ / \ 3--3--3--3 4'--4' (ticket-4) | (ticket-3) 以快进方式合并,则您无事可做。

ticket-3

答案 2 :(得分:1)

我处理这个问题的方式与我在开发分支上工作时其他人可能在 master 上工作的问题相同。

结帐并拉取 master 以获取最新的 master

创建 dev1 分支并在 dev1 分支上工作。

在push dev1之前,将master的当前top合并到dev1中

(checkout and pull master.checkout dev1.“git merge master”将master的变化合并到dev1中)

推送 dev1 并发出拉取请求。

还有更多工作要做吗?检出 master 并从 master 创建 dev2 分支。 在此期间,我的 dev1 合并到 master。所以现在按照上面的描述去获取 master 的 top,并将我的 dev1 更改从 master 合并到 dev2,就像上面描述的一样。

注意:这取决于不需要在 dev1 中进行更改的 dev2。

如其他答案所述,如果 dev2 需要 dev1 而 dev1 未合并,则可以处理,但会变得更复杂,最佳答案取决于具体情况。