Github分支的分支的拉取请求

4

我的git日志看起来像这样:

-------> develop
\---> A
    \---> B

分支A基于develop,并在拉取请求中进行审核。同时,我需要从该分支开发更多内容,因此我创建了分支B。还有一个将分支B合并到develop的拉取请求,其中包括分支A和分支B的提交。
分支A的审核完成后,它被合并到develop中,此时Github说我需要将develop合并到分支B,但如果我这样做,通常会产生很多合并冲突,难以解决。
是否有一种方法可以同时为分支A和B进行拉取请求,而不会在分支A合并时使分支B的拉取请求混乱?
3个回答

3
我发现这里的工作流程存在问题。为什么要将一个分支合并到不同于创建它的分支上?
像这样改变工作流可以使一切顺利运行:
1. 从develop创建分支A 2. 进行必要的更改(如果有的话),以便在不同的分支上开发“更多内容” 3. 从A创建分支B 4. 转到将A合并到develop的拉取请求,并留下评论,说明您正在基于从A创建的分支上开发更多内容,并希望评审人员进行审核,就好像A已经具备了那些内容。 5. 在B上开发“更多内容” 6. 创建一个将B合并到A的PR,以确保一切都得到审核 7. 将B合并到A 8. 再次检查所有内容,以防万一 9. 将A合并到develop

1
在我们的情况下,A在合并之前不能等待B,所以虽然我同意这样做可以避免我们遇到的问题,但它与我们需要的迭代周期不符合。A和B也是足够独立的功能,我们不能同时处理它们两个。 - undefined
@hgcrpd 我猜你可以按照这个流程操作,稍后从A分支创建第二个PR。 - undefined

3
一种解决方案可能是使用Github的功能,允许您更改拉取请求的基本分支。因此,工作流程如下:
  1. 从develop创建A分支
  2. 在A上进行操作
  3. 为A创建拉取请求以合并到develop
  4. 从A创建B分支
  5. 在B上进行操作
  6. 为B创建拉取请求以合并到A分支
  7. 准备好后合并A分支,并将Branch B的拉取请求更改为基于develop
  8. 准备好后合并B分支。
一旦更改了Branch B的基础,那么我认为Github应该显示适当的差异,但尚未测试过这一点。

0
Github说我需要将develop合并到B分支,但如果这样做,通常会产生许多合并冲突,并且很难解决。相反,如果改变引用不会对您造成问题,那么在develop之上重新设置B可能会更少冲突。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接