【发布时间】:2020-05-02 00:15:19
【问题描述】:
我有以下场景:
- 主分支:生产中的内容,可以包含修补程序
- Develop-branch:我的开发人员用来创建拉取请求的分支
- feature-branches:我们为开发人员正在实施的功能创建的分支。
开发人员完成工作后,会在开发分支上创建拉取请求。批准后,我们将特性分支压缩合并到开发分支上,以便不包括开发人员在特性分支上所做的所有提交。这使我们可以在开发分支上拥有清晰干净的 git 历史记录。
有时功能分支需要从开发分支进行变基,这就是麻烦开始的地方。当我们用开发分支变基功能分支时,突然间很多来自开发分支的提交都包含在拉取请求。
如何避免这种情况,以便 PR 只包含来自功能分支的实际提交?
【问题讨论】:
-
哪个分支是在其生命周期开始时创建的功能分支?
master和develop是什么关系?即master是否稍微落后于develop,但其他方面是否相同?除了功能分支,还有其他分支对develop有贡献吗? -
@Pesho_T master 分支确实稍微落后于开发,因为开发可能包含尚未发布的功能。同样,主分支可以包含需要尽快修复的错误的修补程序。发生这种情况时,我们会立即使用 master 分支重新定位开发分支,以便这些修复也可以在开发分支中使用。希望这是有道理的?
标签: git git-merge git-rebase git-squash feature-branch