寻求解决此问题的方法。
我们与Git合作开发分支的一个大型功能分支。团队更喜欢这种方式,声称各个功能分支会限制开发人员处理类似问题以及需要共享代码更改的人员。
在sprint结束时,feature \ integration分支被合并到开发分支(Configuration managed controlled branch)。
我的问题是开发分支每个版本都包含一些半生不熟的代码。一些问题在sprint期间无法完成,但是已经发生了变化;然而那些完成的可能依赖于半生不熟的代码来成功构建。是否有可能保持稳定,经过测试,经过同行评审的主要代码行?
答案 0 :(得分:0)
理想情况下,您的开发分支应该只包含完全开发的功能
在任何时候,开发分支都应该可以投入生产。
现在有些变化取决于另一个变化。如果是这种情况,那么应该有一个单独的功能分支用于该共同功能。应该开发和测试并合并开发之前,其他人开始另一个需要这个共同部分的功能工作。
您应该尽可能地将功能切片,而不是创建具有许多小功能的伞功能。一个伞形分支变得难以测试,它也将长久存在,因为你需要更多的时间来完成将会产生更多合并问题的功能,(因为现在已经合并了很多东西)。
我的经验法则是
我认为这更像是一门艺术而非精确的科学。