(@转载请注明出处:http://blog.csdn.net/cmatch)
如果产品这边同时有2部分的团队在开发,一个为解决一些紧急需求小组A,另外一个为长期开发小组B。
但是如果这2个小组都是在trunk开发,这样会给A组产品上线造成很大的隐患,也同时对B组开发提交测试造成很多压力。
如下解决方案:
1. 紧急需求开发A小组需要在trunk当前最近的稳定版本上分出一条支线,作为以后的开发基线。
2. 并且同时每次提交上线后,需要立即把支线上修改的稳定代码合并trunk上,从而保证trunk的代码及时更新,也保证合并冲突时容易处理。
3. B组的开发作为长线维护主干代码。
4. 如果B组提交上线后,并且稳定运行,紧急需求开发小组那边需要重新以此基线作为他们新的开发基线。
5. 重复以上步骤,形成良性的开发过程。
特别需要提醒的是:使用任何一种版本控制的开发方式,良好习惯就是要经常的合并,否则代码会不可控。虽然svn提供了强大的merge功能,但是需要开发人员经常merge为前提。
据此,也是提供谁为主干开发,谁为分支的基本判定原则。