枫林在线论坛精华区>>程序设计
[340904] 主题: Eclipse零起步系列讲座(四)
作者: little (渺小·Happy^_^)
标题: Eclipse零起步系列讲座(四)[转载]
来自: 192.168.*.*
发贴时间: 2005年04月25日 11:05:26
长度: 6603字

Eclipse零起步系列讲座 (四)

===========================================

(前言)
大家根据上一讲,加之好好练习,相信您会越来越喜欢用eclipse来开发jav
a程序的. 那今
天这篇, 应ForEclipse版友的要求, 就写一篇关于eclipse下使用cvs的文


.而且昨天那篇水贴,大家都谈了谈使用感受,我也觉的受益非潜. 呵呵, 就
来总结一下把
.

(正文)

[CVS 简介]

CVS 是 Concurrent Versions System的缩写,基于Unix体系中成熟的SCCS
(Source
Code Control System)和RCS(Revision Control System)开发,是一个
开放源

码的项目,目前已是版本控制系统的主流软件.一个很常见的使用CVS的场合
,就是开放源
码项目.由于开放源码项目的开发者的分布性,对于版本管理的要求更加严
格,

而目前大部分的开放源码项目几乎都是采用CVS来管理源代码,CVS的标准性
和强大可见一
斑.

CVS采用客户机/服务器体系,代码以及各种版本存储在中心服务器内,每一
个个体开发者
开发时都首先从服务器上获得一份自己的拷贝,在此基础上进行开发,以避


直接影响服务器上的数据.开发者可以随时把自己的新代码提交给服务器,
并通过更新获
得代码的最新状态,保持与其他开发者的一致.

CVS对于网络是透明的,开发者可以使用客户端软件(几乎所有的平台上都
有相应的客户
端软件)在任何时候,任何地点通过网络来获取最新的代码.

对于Eclipse的开发者而言,Eclipse本身内置了CVS支持,不需要使用其他客
户端软件,只
要建立一个CVS服务器,就可以使用这一强大的版本控制系统了.

[CVS 安装和配置]

这里只介绍windows下的cvs实现CVSNT,CVSNT的安装有一定困难,我简单介
绍一下.

当然首先要说一下哪里可以下载到cvsnt, 就在http://www.cvsnt.org ,现
在的最新版本
CVSNT 2.0.41 (Wednesday 21st April 2004)

CVSNT的windows版本在 nt, 2000 , xp, 2003 都可以安装的.

当下来后第一件事情就是setup, 安装好后,

从开始菜单的程序组中启动CVSNT配置程序service control panel.这时应
该看到服务器
还没有运行(CVSNT作为系统服务运行),如果已经运行了,先把它停下来.


择第二个选项卡Repositories,这里我们假设数据库都存储在E:workcvsre
po下,点击Ad
d, 然后点击省略号按钮来选择E:workcvsrepo作为数据库路径.它会提示


你这个数据库没有初始化,问你是否要初始化,选是. 然后, 我们选到serv
ice status 选
项卡, 启动server.

由于cvs的帐户默认是和windows domain用户联系在一起的, 所以可以通过
在windows里
的控制面板添加用户,比如我们添加一个user, username= userid,

password= passwd. 我们会在后面使用到.


[Eclipse下 cvs 的使用]

在eclipse使用cvs前,首先要连上cvs服务器, 打开cvs repository透视图
, 这个透视图
里有个cvs repository视图, 在这个视图中,右键点击选菜单New->

Repository location. 此时会谈出一个add cvs repository对话框. 然后
填写此对话框
的各项信息:

host: localhost (如果你cvs server装在自己机器上)
repository path: e:/work/cvsrepo

user: userid
passwd: passwd

connection type: pserver

一切操作正常的话, eclipse就能连上cvs了. 接下来我们要开始介绍如何
具体使用了.

1. share project & disconnect

首先一个project想加入cvs 控制的话, 就要share project, 用以把所有
project下的信
息加入cvs下控制. 操作方式就是: 选中你要share的project,然后右键点


弹出菜单, 选team-> share project

但是这里要注意的是, 不是所有的文件都应该加入cvs的,比如编辑器生成
的临时文件,编
译生成的.class文件,或者某些编译过程生成的二进制文件等等.因此

,Eclipse并不自动把所有文件存储到数据库中,需要开发者手工指定把那些
文件存储到数
据库中,也就是加入版本控制add to version control.对于单个文件的指


,可以随时在Resource Perspective或Java Perspective中的文件上使用右
键,选择Team,
Add to Version Control.如果需要存储整个项目或者同时指定多个文件,


要使用同步(Synchronize)视图.

如果一个已经在cvs控制下的project,你想与cvs断开, 也很简单, 选中那
个project,然
后右键点击弹出菜单,然后选team->disconnect

2. check out

如果想从cvs上, 下到本地,参加团队开发, 就先在cvs repository视图里
浏览cvs里的内
容, 找到你要找的project, 然后右键点击, 选择check out as project,


样eclipse就会自动从cvs上check out下来这个project, 可以开始团队开
发了

3. 推荐使用的cvs步骤

理想的开发工作流是这样的:

Workbench #1  --------------------------------------------------
--->

                   /                                      /
                  /                                      /  
           update/    commit                      update/    com
mit
                /                                      /      
Branch        --------------------------------------------------
--->
                                        /
                                       /
                             update   /  commit
                                     /
Workbench #2  --------------------------------------------------
--->

*: 从最新状态开始.开始工作前,要保证所有资源与最新的分枝状态一致.
对于从头开始
的新项目,首先要连接服务器,设定存储那些资源文件.对于在服务器数据库


已经有记录的项目,首先要通过更新来保证资源状态最新.如果本地的工作
没有需要特别
保存的,可以直接把数据库中的最新版本Check Out As Project,或者Repl
ace

With,Latest from Repository.
*: 进行本地工作,保存修改.
*: 同步.当做好提交工作的准备后,要和服务器数据库同步.
     **: 首先应该更新(Update),检查所有的Incoming改变,输入到本地
,看是否会影
响自己的工作,是否会造成冲突,破坏完整性等等.
     **: 检查完更新后,可以确认自己的工作和最新的Branch内容是一致
的,就可以提交
(Commit)自己的修改了,标上适当的注释.

以上推荐步骤一定要严格执行,否则后果自负!!

4. 其他使用提示

commit: 当完成对文件或者项目的修改,需要确认修改,把最新的状态存储
到数据库中去,
就需要执行提交(commit)操作.类似的,我们可以在Resource Perspecti
ve

或Java Perspective中的文件上使用右键,选择Team,Commit;或者在Sync
hronize视图中
同时提交多个文件乃至整个项目.注意,每次提交时都会提示输入注释,这是


很重要的,作为每一个状态的说明和提示.

merge: 当我们需要把文件或者项目的不同版本进行比较或者替换时,可以
在Resource
Perspective或Java Perspective中的文件上使用右键,选择Team,Compare


With或者Team,Replace With来完成.进行比较时将打开一个比较编辑器,很
好地表示不同
版本之间的差异,和Local History类似.

explorer: 如果要了解CVS数据库的内容情况,可以使用CVS Repository E
xploring
Perspective.我们可以点击Eclipse左上角的开启视图按钮,增加这一视图
到左边

的视图浏览栏里.前面已经提到,HEAD代表CVS数据库里的主流内容.展开Ve
rsions,可以看
到以往的版本.另外,在右下角有数据库的历史记录标明每次修改的相关信


.

[其他相关资源]

*: Eclipse Help中的Workbench User Guide中的 GettingStarted ->
Team Tutorial 和
 Task -> Working in team environment

*: http://www.cvshome.org CVS官方网站,可以从这里下载最新版本的CV
S(Unix/Linux
平台版本)以及相关的文档和资料,
*: http://laser.zhengmai.com.cn/cvstutorials.html 一个中文的CVS简
单教程.
*: http://www.cvsnt.org/mailman/listinfo/cvsnt 关于CVSNT的使用问
题的邮件列表.

*: http://devguy.com/cvsnt 另一个CVSNT安装问题的帮助和常见问题回
答.
*: http://www.cvsgui.org Windows平台下的图形化CVS客户端软件.


========== * * * * * ==========
返回