首页 > 解决方案 > 将更改从开发合并到主分支的更好方法是什么?

问题描述

Master 是主分支,被直接合并请求锁定。

Develop 是 master 的分支。

Feature1 是从开发分支分支出来的。

我可以将代码从 Feature1 分支拉到我的本地 GIT 并进行更改,然后在本地提交代码。

现在我有两个选项可以将更改集成到开发分支:

  1. 要将 feature1 的代码更改带入开发,我们可以合并 squash 或 rebase feature1 到本地开发,然后将开发推送到服务器。合并壁球不保留以前的功能提交历史。作为 rebase 将保留历史记录。

  2. 另一种方式,我们可以将 feature1 分支推送到服务器,然后在服务器上提出拉取请求,将 feature1 分支的代码合并到开发分支,而不是将本地代码从 feature1 合并到 develop 分支。合并到开发分支时,来自 feature1 的提交历史记录会被存储还是被忽略?

哪种方法更可取?

标签: git

解决方案


如果你不是唯一一个在工作的人feature1,最好有一个 PR 来合并它develop
变基将涉及强制推送,使您的同事不得不重置他们自己的feature1分支。

为了保留 的历史feature1,在接受 PR 时考虑定期合并,而不是“挤压和合并”。

对于developto master,您不是唯一一个集成功能的人,因此建议使用 PR 来合并(而不是 rebase)develop


推荐阅读