最近在带领一个异地的团队在进行.Net B/S系统开发工作。两地相隔1000多公里, 两地都有开发人员,源码的统一管理就成了需要解决的问题。针对这个问题,想到如下的解决方法:
一、利用Microsoft Visual SourceSafe的Internet功能
优点:
1.考虑使用VSS是因为他与Microsoft Visual Studio集成的很紧密。可以在编译器中对源码进行直接Check in 和 Check out.使用的效率很高。
2.团队成员入手容易。在对需求清楚的情况下,可以快速溶入团队,进行编码。
缺点:
1. 对团队中的契合度及团队制度要求比较高。
比如,异地的一个同事周周下班前,没有签入,周末又不开机,或者不愿意去公司做check in,会让你这编编译不过。整个程序无法跑通。当然可以忽略该功能。但是如果涉及到流程方面的,会避之不及。
2.如果某个团队成员在没有签入的情况下,开发的机器崩溃了。重新装系统。那么该部分就无法被重新签入了。
3.对网络的要求比较高。因为异地的网络比较差,当涉及图片等大一些文件操作时。很慢。
二、单人汇总
让一个人来进行汇总,保证他这里的是最新版本的源码。
优点:
1.代码被集成是值得信任的,可以通过时间和文件大小判断是否最新版本。
2.在有人员变更时受到的影响很小。
3.不会因硬件的损坏而受到很大的影响。制度上可以要求每日备份。这样受的影响只有一天的工作量。
4.当网络环境不好时,可以通过邮件、MSN等工具来传递。
缺点:
1.开发环境和框架需要是固定的。如果环境有变动,配置起来容易不统一。
2.效率不稳定。受汇总人个人因素的影响很大。
3.时效性不是最高的。
最后,说一下,我最后的采用的处理方式:
1.在做设计时,需要对模块划分尽量细化。在文件结构中,最好一小类功能就用一个文件夹,这样方便模块的分配和汇总。
2. 两地都有VSS来进行本地的源码管理。
3.两地都设一个负责人。然后由一地的负责人来总体汇总。这个人选需要对VSS、VS2005、环境搭建、需求理解有较丰富的经验。
3.选择对人。人选对了。问题将不再是问题。
4.定义好接口部分。尽量多的文档化。
5.特殊问题特殊解决.比如在更新比较频繁时,对汇总人工作量压力比较大。可以通过放缓汇总时间来解决。
6.多沟通。保持好团队的沟通顺利和团队的融洽度。大家互相熟习和气氛良好。就容易沟通。可以把一些隐藏的问题爆露出来。
最后,还请有异地开发经验的朋友们,给些建议和其他的思路。