Github:在本地合并PR时如何为PR保留干净的分支?

时间:2016-09-07 08:35:08

标签: git github merge pull-request

我在Github上有一个存储库的分支。

我正在制作各种小补丁。对于每个补丁,我创建一个本地分支并提交PR。

现在我还需要将所有这些补丁合并在一起,以进行包含所有功能的本地构建。

  • 我应该将它们合并到我当地的主人吗?如果是这样,我将来在哪里分支?
  • 我可以以某种方式在另一个分支 A (已调整的构建系统)上建立一个新的分支 B (新代码)我提交了一个PR,并且仍将这些分开吗?这意味着我提交了 B 的公关,没有 A A 的内容。

2 个答案:

答案 0 :(得分:1)

我会创建一个单独的分支,并将所有分支合并到其中以进行本地构建。如果您创建更多功能或只更新其中一个分支,您也可以将它们合并到该分支。

如果您愿意,也可以使用当地的主人来做。之后,您可以使用git checkout -b new-branch origin/master创建新分支,这将使用名为origin的远程存储库中的master作为新分支的基础。

无法仅为分支中包含的部分更改创建拉取请求。因此,在将A合并到B(或基于A创建B)之后,A的变化也会发生在B的拉请求中。

答案 1 :(得分:0)

当在github的主服务器上进行更改时,必须同步到本地主分支,这只是一个同步分支(从不在这里做任何开发)

Github -> master    Sync    to    Local  -> master 

案例1:新功能开发

  • 使用父
  • 更新本地主分支
  • 从本地主分支git checkout -b new-feature-a
  • 创建新分支
  • 提交并将更改推送至new-feature-a
  • 将PR提升至Github->master new-feature-a

为个人贡献和更好的增强创建分支,并在Github->master上安排定期构建。

案例2:构建和主人的单独分支

  • master-build
  • 为构建Github->master创建新分支
  • 合并到Github->master的所有更改都应与PR {明智的master-build同步或定期明确,取决于构建运行的频率。

单独的分支保持代码简单。但应该可以使用依赖的分支代码。在这种情况下,B包含A的更改,并且必须按顺序进行。

在这种情况下,应始终合并依赖PR。