【问题标题】:Submit several pull requests that depends on each other提交多个相互依赖的拉取请求
【发布时间】:2018-09-24 22:46:16
【问题描述】:

我在 Github 上创建了一个项目。到目前为止,我使用了通常的方法,即创建一个特定的分支,进行一些特定的更改,将其推送到源并为上游 repo 创建拉取请求。

现在假设我创建了分支 B1 来修复代码中的问题并从中创建拉取请求。然后我想继续工作并添加一个新功能。所以我从 master 上的 B1 的同一点创建分支 B2。

我遇到的问题是,要使 B2 中的代码正常工作,我还需要从 B1 获得修复。如何在我的本地仓库中管理它,因为知道来自 B1 的拉取请求尚未集成到上游,因此我无法在分支 B2 之前从上游获取合并。

我清楚了吗:-)?

【问题讨论】:

  • 你很清楚,我以前也遇到过这个问题。 git rebase 是你的朋友。你可以做几件事:一是在 B1 之上创建 B2,在那里工作,一旦 B1 被合并到上游,你在上游之上 rebase B2。另一种选择是在上游开始您的分支,并将 B1 合并到其中。然后,一旦 B1 被合并到上游,您在新的上游更改之上执行交互式 rebase 并删除合并提交(git rerere 是您的朋友,如果您采用第二种方法,请确保启用它)。
  • 当然,如果您不介意带有大量合并提交的奇怪历史记录,则不必重新设置基准,只需合并您想要的任何分支。

标签: git github branch pull-request


【解决方案1】:

您可以从分支 B1 创建分支 B2,因此它将包含修复。然后,一旦 B1 合并到 master 中,您就可以在 master 上 rebase 分支 B2 并继续处理它。

【讨论】:

    猜你喜欢
    • 2015-11-21
    • 2021-11-25
    • 2017-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多