|
客户需求
合并是并行开发中一个令人头疼的环节,众多的冲突和缺陷均源于此。在缺乏有效的合并跟踪的情况下,会导致众多的问题出现,相关的情况有很多种,以下是一个典型的场景:
在公司发布产品1.0版本后,该版本分别交付给a,b,c三个客户使用,由于这三个客户的需求各有差异,于是分别从1.0开发主线创建出三天代码线,对应于三个客户,分别为1.0a、1.0b、1.0c,且分别由三个不同的小组维护。这样加上1.0开发主线总共有四条代码线并行。
此时,1.0a的客户提交了一个缺陷,1.0a的维护团队及时修复了这个缺陷,由于该缺陷是从主代码线1.0带来的,所以该团队及时合并了相关代码。但如果没有有效的合并跟踪机制,1.0b、1.0c两条代码线的维护人员并不知道相关的合并,所以往往会导致如下的问题发生:
1、重复的发现和修复同一个缺陷。
2、重复修复后导致额外的合并操作,且往往会导致合并冲突,并且进一步导致处理冲突时产生额外缺陷的潜在风险。
因此,应该有一个有效的机制来告诉1.0b、1.0c两条代码线的相关人员及时进行相关的同步操作
由此可见,在持续的并行开发环境下,有效的合并跟踪机制是必不可少的。这种合并跟踪机制概括起来就是:当被跟踪的代码线(大多数情况下为开发主线)发生变更(如提交或合并)时,所有可能受到影响的相关分支/代码线应该被及时跟踪到并告知进行相关的同步操作。
|