摘要
我目前正在与多个团队共同开发的大型项目上工作,总共有50多名开发人员。我们试图利用已知的各种方法来使交付过程流畅和可预测(如Scrum、代码冻结、计划会议、回顾等)。但最终结果却往往是一团糟。最近,在我们的产品演示之前,我们遇到了巨大的合并/部署问题,这不仅是由于管理层和客户的压力,也是由于我们的开发工作组织方式。
问题
我们使用GitLab中的git,并使用pull requests,在将更改合并到生产分支之前尝试审查它们。但是在接近截止日期的半天时间内(4小时),开发人员往往会提交超过 50 devs * 0.5 day = 25 dev days
的工作量,导致我们的最终分支极其不稳定。问题在于,大多数分支在隔离状态下是稳定的,但在合并时会引起问题。增量合并使问题变得更糟,因为开发人员正在团队分支中开发大型功能模块,并最终将这些大型团队分支合并到生产分支中。最终,很难针对特定的次要问题进行具体的回滚,因为其上面有大量的代码。
问题
我正在寻找一种方法,使我们在使用git时的交付过程更加可预测和透明。其他大型项目如何组织他们的工作以达到上述目的。
我不确定从哪里开始,也许有关于这个主题的文献资料,或者您可以分享自己的最佳实践。任何关于这个主题的信息都将不胜感激。
提前感谢您!