怎样管理项目源代码?(CVS项目同步的问题)

richardxie 2004-10-20 11:48:41
一个j2ee的web应用,主要由400个java文件和600来个JSP文件,CVS管理,目前共有3个版本

1: informix/db2版,用的最多,30多个平台
2: oracle版,只有java代码中SQL语句不同,其他源文件与版本1相同.(只是因为数据库表多处列名用了UID,UID在oracle中是关键字!被迫整出的新版本)
3: oracle特殊版,与oracle版本只有十几个java/jsp文件不同.(为当地政府部门特殊开发的:( )

这3个版本在CVS上分别独立成为3个项目的源代码进行管理,这样问题就出来了!
作为一个专门处理bug的开发人员,处理完一个bug意味着要更新3个项目!而通常在一个版本上修改/测试需要数天乃至2周,在完成这个版本的修改后,更新其他版本往往非常痛苦(要核对修改了哪些地方!),效率明显低!
我想能不能把3个版本整成一个CVS项目,把两个oracle版本作为分支版本管理,不知是否可行?怎么同步?请各位大侠指教!!!!!!谢谢!!!!!!
...全文
213 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
richardxie 2004-10-24
2个oracle版本比较容易整成一个cvs项目
重整软件的架构已经没有可能的了……
系统使用struts,对于维护来说,相对地减少了不少工作!
回复
tianxinet 2004-10-22
确实是个头疼的问题!

把3个版本整成一个CVS项目,把两个oracle版本作为分支版本管理,不知是否可行?
>>个人觉得这样不太好,既然在oracle版中有字段名的不同,那么就应该不单是sql语句的不同了,javabean对象(比如属性)也应该有所不同,这样不宜合为一个版本

可以想象,痛苦之处在于核对哪些地方做了什么修改,以及大量重复的修改/调试/测试工作,对你的现状表示同情(呵呵...),但事已至此,似乎没有一劳永逸的办法了! 倒是建议你给你们团队的成员布置一个新任务,就是每修改完成一个文件都做一个修改记录(记事本就可以,但最好的是你统一搭建一个局域网内的web方式记录平台--这对于你们的开发团队来说应该是小菜一碟,让每个人都在上面记录修改历史,并作为项目的开发制度定下来,修改其他版本时直接查询修改记录就好了).

以上是修补办法,但最好的办法是重整软件的架构,合理的分层(如:mvc模式),隔离各层的数据对象,使每层的修改对其它层的影响尽可能的小.如果一个系统要针对不同的数据库,那一种常见的处理模式就是DAO模式.合理的软件架构合设计才是减少修改/维护工作量的最好途径.
回复
richardxie 2004-10-22
请各位大侠指点!!!
回复
bignacl 2004-10-20
顶一下。
应该可以吧,我以前自己做过。但早忘了,只是玩玩而已。
不知道有没有专业人士来回答。
回复
发动态
发帖子
研发管理
创建于2007-08-27

1176

社区成员

软件工程/管理 管理版
申请成为版主
社区公告
暂无公告