【转】在Eclipse中使用CVSNT进行项目版本管理

转载地址:http://blog.sina.com.cn/s/blog_549941cb01012m09.html

在一个三人以上的团队协作开发的项目中,使用一个好的版本控制系统是非常重要的。如果你开发的系统基于j2ee,那么采用eclipse作为开发工 具是一个非常好的选择,关于eclipse的安装和配置,前文已有文章描述,这里主要介绍一下如何在WINDOWS环境下配置CVSNT,以及如何在 eclipse中使用CVSNT来进行项目的版本管理。

CVS 全称Concurrent Versions System,主要用于管理在开发过程中生成的源代码、文档等资料,记录他们的更新历史,使开发团队各成员可以更好的协作。CVS版本控制系统采用C/S 架构,目前CVS server可以支持Linux、windows 2000/xp/2003以及部分unix(如sun的solaris等),CVS client在linux、windows、unix上也有对应的版本。

在eclipse中已经内置了CVS client,eclipse的文档中建议将CVS server安装在linux、unix等操作系统上,不过在我们大多数人的开发中,采用CVS server for windows仍然是最方便快捷的方式,尽管它可能比不上linux、unix版本那样的稳定。

  在正式的配置之前你需准备的软件:

1、eclipse   http://www.eclipse.org/downloads/index.php/  目前最新的版本是3.2.1

2、cvs server for windows  http://www.cvsnt.com/cvspro/  目前最新的版本是2.5.03

这两个产品的安装都非常简单,eclipse直接解压缩倒一个目录即可运行(当然需要相应版本的jdk支持),cvs server直接运行安装程序安装即可。这里引用别人的文章,结合自己的配置过程,作一个总结。。

一 安装与配置:

cvsnt直接运行安装程序安装即可。Windows 2003 Server 需要SP1。。

配置cvs server

1.开始 ->所有程序 ->CVSNT -> CVS Control Panel .  点Repository configuration配置面板。点Add , 增加一个库,Name时可以修改的,客户使用的就是Name而不是实际的路径。我设置了 Location=D:\cvsNTRep , Name=/cvsroot,点击OK,出现一个对话框,点击"是"即可.

2. 进入about面板,启动两个服务。cvs ,cvs lock.(安装后的默认状态是运行的。如果我们人为作了改动,则这里可能需要手动启动)。之后客户端就可以访问cvs了。

在eclipse中配置CVS client

eclipse->show perspective->cvs repostiroy explore -> new -->
Host 输入[ localhost ]
Repository Path 输入cvs库的名字 [ /cvsroot ] ,记住不是d:\cvsNTRep
User输入本用户的实际名字,这里需要特别注意,winxp登陆时显示的名字例如shirx并不是实际名字,
      进入控制面板-〉管理工具-〉计算机管理-〉本地用户和组--〉用户-〉可以看到“名称”“全名”,把
     全名对应的名称及下来。写在这里[ eric ]
password 输入此用户的password .

ok,之后你就可以看到eclipse得CVS Repositoreis视图中有:pserver:eric@localhost:/cvsroot了。

这样就可以使用了。

 除了这个用户之外,其他的用户,Guest组的用户,就变了用户名、密码,其他设置不变,之后

形成的新的库链接就是:pserver:congxy@localhost:/cvsroot.

所以,给这个服务器增加一个新cvs用户的方法就是增加一个guest组的用户而已。

 如果自己机器能够访问cvsNT,其他机器访问不了,那就关闭服务器的windows防火墙。这样其他机器就可以访问了。

三 创建一个CVS实例

1.先在eclipse中建立一个新的项目“Hello World CVS”,再建立一个“HelloWorld”类(注1),只是简单地输出语句“HelloWorld!”。

在Eclipse中使用CVSNT进行项目版本管理(转)

2.把这个本地项目共享到repository里。打开java视图,选中这个项目,右键单击->小组->共享项目:在Eclipse中使用CVSNT进行项目版本管理(转)

出现提示窗口后,一路按“Next”即可,直至出现一个“添加至CVS版本控制”的对话框,点击“详细信息”,可以选择哪些资源添加到CVS资源库,这里没有选择“/Hello World CVS/bin”目录(它不是源代码),然后点击“是”即可。

在Eclipse中使用CVSNT进行项目版本管理(转)

出现“提交”对话框,可以选择不添加注释,但最好是添加。(注意,每次提交时都会提示输入注释,这是很重要的,作为每一个状态的说明和提示。)

完成后commit所有本地文件,然后你就可以使用CVS强大的版本控制功能了。

在Eclipse中使用CVSNT进行项目版本管理(转)

 

注1:刚 开始时我给“HelloWorld”类用的包名是“cvs.test”,后来共享项目时出现问题,出在cvs这个词上,把包名改为“cvs1.test” 后问题消失。原因是采用“cvs.test”包名时会就建立一个cvs目录,而共享到repository时也要创建cvs目录,结果目录名冲突。所以包 名不要单独用cvs这个词。

第四节 实践CVS

1.提交代码

  现在我增加一条输出语句“System.out.println("第一次修改");”,保存。然后选择右侧“包资源管理器”中的HelloWorld.java文件,右击,在弹出菜单中选择“小组”->“提交”。

在Eclipse中使用CVSNT进行项目版本管理(转)

提交后显示如下,可以看到CVS资源库已经反映了提交后文件的改变。

在Eclipse中使用CVSNT进行项目版本管理(转)

2.从资源库中更新代码

   现在删除掉HelloWorld.java中的语句“System.out.println("第一次修改");”,然后保存。

   右击HelloWorld.java文件->替换为->HEAD的最新内容,可以看到删除的代码已经还原了。

   或者,右击HelloWorld.java文件->小组->与资源库同步,选择“将当前更改从右边复制到左边”按钮,然后保存,可以看到删除的代码已经还原了。

在Eclipse中使用CVSNT进行项目版本管理(转)

 

3. 检出项目

   右击“CVS资源库”中的“Hello World CVS”,选择“检出为...”

在Eclipse中使用CVSNT进行项目版本管理(转)

  在“检出为”对话框中的“项目名称”填写:Hello World CVS Two,然后点击“完成”。

在Eclipse中使用CVSNT进行项目版本管理(转)

  这样,这两个项目同时指向一个CVS资源库,就有可能产生提交冲突。

4. 发生冲突

    简化一下,把Hello World CVS项目称为项目1,Hello World CVS Two称为项目2。注意当前这两个项目的版本都是1.2。

    在项目1中增加一条语句“System.out.println("项目1第1次修改");” ;项目2增加一条

语句“ System.out.println("项目2第1次修改");”。

在Eclipse中使用CVSNT进行项目版本管理(转)

 提交项目1的HelloWorld.java,注意这时版本变成了1.3。

 这时提交项目2的HelloWorld.java,会出现一个错误,如下:

  在Eclipse中使用CVSNT进行项目版本管理(转)

这是由于资源库中已经具有该资源的更新修订版(版本是1.3),而版本是1.2的项目2提交时就会发生冲突。

5. 解决冲突

  将项目2的工作与资源库资源合并,并以本地方式保存合并的资源。然后可以选择提交此合并的结果。

   右击项目2的HelloWorld.java 1.2->小组->更新...   如图:

在Eclipse中使用CVSNT进行项目版本管理(转)

注意此时项目2的版本已经变成了1.3,更新后冲突已标记出来,你可以选择是否合并资源库中的内容,然后保存,这时项目2可以提交合并后的版本了。提交后,项目2和资源库的版本变成了1.4。

在Eclipse中使用CVSNT进行项目版本管理(转)

最后,不同的CVSNT版本,在配置的过程中是不太一样的,随着CVSNT版本的不断升级,我们要根据具体的版本掌握相应的正确配置流程。。

posted @ 2014-05-04 15:38  csshaw  阅读(227)  评论(0)    收藏  举报