繁体   English   中英

Git 分支高效工作流程

[英]Git branching efficient workflow

这是我公司的发布流程。 我只是想看看它是否可以优化。

  1. 有四个分支,
  • TeamA - Team A 成员 go 所做的所有更改。 它被部署到 TeamA QA 盒子。
  • TeamB - Team B 所做的所有更改都在那里。 它被部署到 TeamB QA box。
  • 发布 - TeamA 和 TeamB 分支的更改在这里。 这被部署到 UAT 盒子。
  • Main - 一旦发布分支部署到生产,它就会合并到 main。
  1. 这是 TeamA 开发人员的典型开发工作流程。
  • 从 TeamA 创建一个 Feature/Bug 分支并推送更改。
  • 它由 QA 团队在 QA 框中进行测试并签署。
  • 当发布时间到来时,开发人员从发布分支创建另一个功能/错误分支并推送更改(手动)。 因为 TeamA 分支会有很多其他的变化。

如您所见,开发人员在两个不同的分支上进行了两次“分支和推送”。 由于是手动步骤,因此无法保证开发人员在两个步骤上都推送相同的更改。

我们如何避免开发人员重复执行相同的步骤?

报废 TeamA 和 TeamB 分支; 他们比没用更糟糕。

对每个更改进行两次测试的想法是有道理的:

  • 第一次,您是单独进行测试,因此如果 go 错误,您不必取消合并。
  • 第二次,您正在测试将要发布的组合,以确保修复不会产生不良影响。

在您的工作流程中,TeamA 和 Release 分支都具有更改组合,但它们具有不同的组合。 在 TeamA 分支上进行的任何测试都是针对永远不会发布的代码版本。 此时任何测试失败都需要恢复该更改,然后重新测试不同的更改组合,这些更改也不会发布。

所以我的建议是放弃 TeamA 和 TeamB 分支,并让 QA 检查各个任务分支以进行初始测试。

暂无
暂无

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

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