繁体   English   中英

使用Git的具有多个分支的分支策略?

[英]Which branching strategy with multiple branches using Git?

对于Git来说,我们相对较新,它使用具有多个分支的分支设置,即不仅具有一个分支,然后应用要素分支。

我们的分支模型包含以下内容(按此顺序):

  • 大师/制作
  • 质量检查
  • 系统测试
  • 发展历程

从今天开始,我们首先对Development进行更改,并在使用Cherry Picking时将其应用于上面的下一个分支,即系统测试。 然后,我们再次执行Cherry Pick进行质量检查并进行彻底的测试。 更改不一定要交给Master,因为某些更改可能被搁置或推迟。

使用Cherry Picking对我们来说很麻烦,特别是如果更改是旧的并且包含很多提交的话。 由于自动合并可能会失败,因此也存在破坏代码的风险。 由于源代码也包含二进制数据,因此自动合并也很困难。

我们想简化应用更改的步骤。 在以前的项目中,使用功能分支一直是简化操作的方法。 由于要考虑多个分支,因此我们很难解决此方法的问题,并且某些更改不一定会到达Master。

我将尝试解释我们如何在我们的设置中使用Git:

创建更改:首先从Master创建功能分支。 任何更改都会推送到该功能分支。 此功能分支只能从Master合并。

将更改应用于分支:功能分支合并到任何主要分支中,但先合并到开发中,然后再进行系统测试,等等。功能分支可以用于质量检查,而不必用于母版。 一些功能分支可能与以后的更改有关,并且可以保留更长的时间。

哪种策略最适合使用Git的这种分支模型? 我们应该如何以最佳方式使用Git。

您可以参考成功的git分支模块 我们通常从开发结帐功能分支。 您也可以关注它。

  • 结帐功能从开发分支出来。
  • 合并功能分支到系统测试分支。
  • 将系统测试分支合并到质量检查中。
  • 准备就绪并由质量检查小组通过后,将质量检查合并到母版/制作中。

它比挑选樱桃更有效率。 您还可以保留要素分支中的某些更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM