利用CVSNT在Eclipse中使用CVS

利用CVSNT在Eclipse中使用CVS--1.安装与配置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://blog.csdn.net/javamxj/archive/2004/10/11/131952.aspx

    目前最新的版本是3.0.1

2、cvs server for windows  http://www.cvsnt.com/cvspro/

    目前最新的版本是2.0.51d
    (注:关于如何在CVSNT 2.0.58d   版本下使用,请参考 http://blog.csdn.net/javamxj/archive/2005/01/05/240726.aspx )



主要内容:

1、安装与配置cvsnt;
2、在eclipse中配置CVS client;
3、创建一个CVS实例;
4、实践CVS;


第一节 安装与配置cvsnt

cvsnt直接运行安装程序安装即可。

配置cvs server

1.开始 ->所有程序 ->cvsnt ->Service control panel,出现以下窗口:

(安装后的默认状态是运行的)

2.切换倒repositories页,点击“add”按钮建立一个项目库,在这里我新建一个D:/cvsfile目录,

点击OK,出现一个对话框,点击"是"即可.

 

3. 切换到Advanced页:选择如下:

一定要将use local users for pserver和pretend to be a unix CVS server这两项选上,前者是要求cvs server采用windows 的本地用户进行权限认证,如果采用域用户权限,那么所有的客户端开发机都必须要登录到windows域才能连接到CVS server,比较麻烦。后者是强制CVS server for windows模拟成unix CVS server,只有这样eclipse才能连接上CVS server for windows!

4.确定后,重新启动CVS service和CVS lock service.

二节: 在eclipse中配置CVS client

1.运行eclipse 3后,执行下图所示的功能:

或者,打开"窗口"菜单->"打开透视图"->"CVS资源库研究"

2.在"CVS资源库"窗口的空白处点击右键,选择"新建"->"资源库位置"

 

3.如下配置CVS资源库

主机: cvs服务器的主机名,也可以是它的IP地址,因为是本地主机,所以填写"localhost"

资源库路径: 在上一节"安装与配置cvsnt" 步骤2 "切换倒repositories页" 中的"Name"项;

             在此例中就是"/cvsfile"。

认证: "控制面板"->"用户帐户":选择已经存在的一个用户名和密码填入,或者创建一个新帐户。

      还可以右击“我的电脑”图标->管理->计算机管理->本地用户和组->用户:创建一个新的帐户,如此例中我创建了一个“mmm”的帐户。

    

连接类型: 选择“pserver” 是最常用的一直cvs远程访问方式 。

4. 完成配置后窗口如下。


第三节 创建一个CVS实例

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

2.把这个本地项目共享到repository里。打开java视图,选中这个项目,右键单击->小组->共享项目:

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

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

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

 

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


第四节 实践CVS

1.提交代码

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

 

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

2.从资源库中更新代码

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

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

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

 

3. 检出项目

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

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

  这样,这两个项目同时指向一个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次修改");”。

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

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

 

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

5. 解决冲突

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

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

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


1.提交代码

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

 

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

2.从资源库中更新代码

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

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

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

 

3. 检出项目

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

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

  这样,这两个项目同时指向一个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次修改");”。

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

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

 

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

5. 解决冲突

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

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

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


第三节 创建一个CVS实例

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

2.把这个本地项目共享到repository里。打开java视图,选中这个项目,右键单击->小组->共享项目:

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

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

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

 

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


第四节 实践CVS

1.提交代码

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

 

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

2.从资源库中更新代码

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

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

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

 

3. 检出项目

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

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

  这样,这两个项目同时指向一个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次修改");”。

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

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

 

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

5. 解决冲突

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

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

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


1.提交代码

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

 

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

2.从资源库中更新代码

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

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

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

 

3. 检出项目

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

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

  这样,这两个项目同时指向一个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次修改");”。

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

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

 

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

5. 解决冲突

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

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

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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值