如何分支和包含挂起拉取请求中的更改

时间:2016-11-09 23:14:23

标签: git git-flow

  • 我创建了一个包含一组更改的拉取请求。
  • 我的下一个任务取决于这些变化
  • PR可能需要一段时间才能获得批准并合并到发布分支
  • 当我从本地主人创建新功能分支时,PR更改不存在

如何创建新分支以包含待处理的拉取请求,而不是在我推动新PR时不会产生问题?例如,当我合并第二个PR时,我不希望第一个PR的更改产生冲突。

从第一个功能分支考虑分支或将第一个功能合并到第二个分支,但不确定哪个是更好的选择。

2 个答案:

答案 0 :(得分:2)

嗯,第二次拉取请求的变化取决于第一次拉取请求的变化。因此,如果(当)你最终改变第一次提交,第二次提交自然会受到影响。这是拉取请求的重点,以及为什么不将代码直接推送到主仓库。

如上所述,从第一个功能分支创建功能分支并将其设置为上游:

git branch --set-upstream-to=[your remote]/[first feature branch]

这样,您只在特定功能分支中保留唯一的新提交。然后,运行git status将显示与其他功能分支相比的更改,而不是与主数据库进行比较。

每次更改第一个功能分支时 - 在批准PR并且实际合并之前的时间内 - 运行git pull --rebase以将功能分支1中的任何更改应用于功能分支2。

答案 1 :(得分:0)

鉴于此

  • 在PR2中,您 触摸PR1上更改的文件。

PR1和PR之间绝不存在合并冲突的可能性。 PR2。

如果

  • PR1也不会改变。

你的方法完全没问题&也不会影响历史。

如果PR1发生变化并且是PR2的依赖项,除了您的工作之外,您可能需要在PR2实现中遵守该更改(例如:依赖方法签名)。如果是这种情况,重新定位当前分支(PR2)将master(或开发,PR1已合并到的主要开发分支)分支作为基础将使您的历史更好。 :))