ECLIPSE小组开发环境实践: 第2部分 - 编程入门网
在系统的开发过程中,开发人员不应只关注自己的开发,还应尽量与其他开发人员保持同 步,也就是需要经常地将其他开发人员的开发成果更新到本地的工作拷贝中。 a. CVS资源库中的文件被更新了,但本地文件没有更新。 在开发小组中,可能有部分开发人员负责一些通用模块的开发,而其余的开发人员则专注 于业务系统的开发。在这样的开发场景中,业务系统的开发人员就应经常更新通用模块,保 持工作拷贝中的通用模块与CVS资源库中通用模块的同步。在文件上点击右键,在出现的弹出 菜单中选择【Team】→【Update...】。本地文件的内容将被替换为CVS资源库中相应文件的 内容。 b. CVS资源库中的文件没有被更新,但本地文件被更新了。 此时,由于本地文件的修订版号与CVS资源库中文件的修订版号相同,更新操作实际上什 么也不做。 c. CVS资源库中的文件和本地文件都被更新了。 此时,ECLIPSE会尽量将CVS资源库中的内容合并到本地文件中。如果在合并过程中没有发 现冲突,则合并后的文件将包含本地修改和其他开发人员的修改;如果在合并过程中产生了 冲突,则ECLIPSE会在合并文件中着重显示相冲突的部分,并将原本地文件作一个备份。图 20~23演示了这一过程。 cvstest.txt文件1.2版本的三行的内容分别为test line1、test line2、test line3。用户jiangch将文件内容修改并保存后的结构如图20,在jiangch提交之 前,用户cvsuser2已将文件内容修改并提交,此时 CVS资源库中cvstest.txt的修订版号为 1.3,见图21。 图20:存在冲突的更新1--用户jiangch的修改结果 ECLIPSE小组开发环境实践: 第2部分(3)时间:2011-04-09 IBM 姜昌华图21:存在冲突的更新2--用户cvsuser2修改并提交后的结果 用户jiangch在文件cvstest.txt上进行更新操作后的结果见图22。 图22:存在冲突的更新3--用户jiangch进行更新操作后的结果 第二行保持不变,但产生冲突的第一、三行则被标记出来了。cvstest.txt的修订版号也 变为1.3并处于已修改状态,新产生的文件.#cvstest.txt.1.2是修订版号1.2的备份文件。通 过手工将jiangch与cvsuser2的修改内容合并后就可以进行提交操作了,图23是一个合并后提 交的结果。 图23:存在冲突的更新4--用户jiangch合并后提交 ECLIPSE小组开发环境实践: 第2部分(4)时间:2011-04-09 IBM 姜昌华5.3 冲突解决 ECLIPSE 为CVS的操作提供了一个非常实用的功能:同步透视图(Team Synchronizing Perspective)。通过同步透视图,我们可以在提交、更新操作之前就发现可能存在的冲突。 使用ECLIPSE小组开发环境的开发人员都应该熟悉同步透视图的使用。图21~24演示了如何使 用同步透视图。在cvstest.txt 1.6与cvstest2.txt1.13的基础上用户jiangch对这两个文件 进行了修改并保存。此时的结果如图24。 图24:冲突解决1--用户jiangch的修改结果 用户cvsuser2也在cvstest.txt 1.6、cvstest2.txt 1.13、TextRunnerTest.java1.1的基 础上对这三个文件进行了修改并将修改结果提交到了CVS资源库。其结果见图25。 图25:冲突解决2--用户cvsuser2修改并提交后的结果 ECLIPSE小组开发环境实践: 第2部分(5)时间:2011-04-09 IBM 姜昌华如果用户jiangch不能确定只有他一个人会修改这两个文件,他可以在如图21的画面上选 择这两个文件并点击右键,在出现的弹出菜单中选择【Team】→ 【Synchronize with Repository...】,出现如图26所示的画面。图中①②③④所标识的按钮是过滤器,分别对应4 种模式,可以控制在同步视图中显示何种状态的文件。 ①:Incoming模式,显示CVS资源库中修订版号高于工作拷贝的文件。在实际工作中,可以 选中此类文件并在右键菜单中选择【Update】。也就是将其它开发人员 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |