楼主: bmccbj

[参考文档] clearcaselt配置

[复制链接]
论坛徽章:
2
191#
 楼主| 发表于 2006-7-30 02:09 | 只看该作者
191
"(pinned),操作不成功。是的,你还需要下一步操作。
13、选定那些你确实需要修改的文件,然后进行分支操作。这
样你就可以任意修改这些文件,而且你会发现图标也恢复到原来的样
子。
附图四:分支操作前的项目历史记录
附图五:分支操作完成后

使用道具 举报

回复
论坛徽章:
2
192#
 楼主| 发表于 2006-7-30 02:10 | 只看该作者
192
6. 文件归并(merge files)
正所谓,分久必合,合久必分。分支操作以后,你肯定需要重
新将这些文件合并到一起,比如上面那个例子,你肯定希望在版本2.0
中被修改了的错误不要在版本3.0中再出现,这个时候你就需要用到归
并操作。
所谓文件归并就是将由一个文件产生的多个不同拷贝重新形
成一个唯一的新的文件版本,一般都是将分支上的改变反映到主线上,
所以称之为归并操作(当然还存在其他两种情况,使用multiple
checkouts,某些情况下get一个文件的时候)。在文件归并过程中VSS
并不能去决定文件差异的取舍,它只是将这些文件间的异同提交给你,
由你自己来确定最后的文件内容。当然比较的基准就是我们前面提到的
它们共同的祖先。
有两种方法可以进行归并操作,一种是默认的visual merge,
另一种是manual merge。一般推荐使用前一种方法。
文件归并过程中涉及到两个概念,一个是投送者
(contributor),另一个是目标(object)。投送者就是你在分支上的那
些文件,目标就是你在主线上的那些文件,归并操作完成后,只有目标
的内容改变,而投送者的内容保持不变。
如何实现归并操作
1、 在VSS Explorer中选择目标文件或者项目。
2、 选择SourceSafe菜单,单击Merge Branches显示Merge To
对话框。

使用道具 举报

回复
论坛徽章:
2
193#
 楼主| 发表于 2006-7-30 02:10 | 只看该作者
193
3、 在Projects框中选择投送者所在的项目名称,所以说该对
话框的名称应该为Merge From,而不是Merge To。
4、 单击Merge显示Comment对话框。
5、 输入注释,点击OK。
6、 如果两者之间的差异很明显(比如一个文件比另外一个文
件多出一行),系统会自动帮你决定目标文件的内容。反之,系统显示
Visual Merge对话框,你可以自己决定目标文件的内容。(3)
操作完成后,查看一下目标文件是不是变成了你希望的内容。
好啦,至此所有的工作已经完成。你可以放松一下来杯浓茶,
不敢喝咖啡,怕被Sun公司控告侵权。但是中国人有个习惯,不管什么
东西都喜欢分出个高低,排个名次。我记得小的时候对隋唐演义中的好
汉排名津津乐道,什么第一名李元霸,第二名宇文成都等等。那好,我
们也来啰嗦一下,评评VSS的功过是非。(4)
7. 评说VSS
在支持并行开发方面,VSS提供了大量优秀简洁的特性,但是
在以下几个方面稍显不足:
1、 在进行分支操作的时候,灵活性不是很大,只能是单一地
选择某个项目中的所有文件,不能进行一些自定义的设定,比如我只希
望选取所有的文本文件。
2、 由于VSS中主线和分支是采用不同的项目来区分,所以很
容易被混淆而且增加项目的数量,不如采取版本号来区分直观。
3、 在进行归并操作时,投送者与目标的概念很模糊,而且没

使用道具 举报

回复
论坛徽章:
2
194#
 楼主| 发表于 2006-7-30 02:10 | 只看该作者
194
有显示地提出这两个概念。
4、 由于VSS中没有版本树的概念,所以分支操作后没有一个
直观形象的版本演化的感官认识,就像Rational ClearCase中那样,这
样使得不能把分支和主线很好地联系在一起。
8. 总结
本文主要讲解一些VSS使用中的高级特性,使得你能够用来应
付一些比较复杂的情况。但是,VSS毕竟只是一种工具,项目配置管理
的成败主要取决于项目的配置管理策略。
9. 说明
1) 本文所有的例子都是基于Visual SourceSafe 6.0英文版,
其他的版本可相应对照。
2) 这两个概念是从Rational ClearCase借用过来的。
3) 关于Visual Merge对话框的详细信息,可以参考VSS的帮助
文档。
4) 当然本文不准备在整体上来评价VSS,主要是从支持并行开
发这个方面来说说VSS 的不足之处,只要与Rational ClearCase 进行
对照。
CVS
一 CVSNT 的安装及配置
CVS是Concurrent Versions System(并发版本系统)的缩写,
基于Unix体系中成熟的SCCS(Source Code Control System)和RCS
(Revision Control System)开发,是一个开放源码的项目,目前已

使用道具 举报

回复
论坛徽章:
2
195#
 楼主| 发表于 2006-7-30 02:11 | 只看该作者
195
是版本控制系统的主流软件。一个很常见的使用CVS的场合,就是开放
源码项目。由于开放源码项目的开发者的分布性,对于版本管理的要求
更加严格,而目前大部分的开放源码项目几乎都是采用CVS来管理源代
码,CVS的标准性和强大可见一斑。
CVS采用客户机/服务器体系,代码以及各种版本存储在中心服务
器内,每一个个体开发者开发时都首先从服务器上获得一份自己的拷
贝,在此基础上进行开发,以避免直接影响服务器上的数据。开发者可
以随时把自己的新代码提交给服务器,并通过更新获得代码的最新状
态,保持与其他开发者的一致。
CVS对于网络是透明的,开发者可以使用客户端软件(几乎所有的
平台上都有相应的客户端软件)在任何时候,任何地点通过网络来获取
最新的代码。
对于Eclipse的开发者而言,Eclipse本身内置了CVS支持,不需要
使用其他客户端软件,只要建立一个CVS服务器,就可以使用这一强大
的版本控制系统了。
CVS起源于Unix/Linux平台,关于Unix/Linux平台下的安装使用的
介绍文章很多,这里就不再重复,读者如果需要在Unix/Linux平台下建
立CVS服务器,可以参考本文附录的相关资源。
在Windows平台上也有CVS的一个实现――CVSNT,CVSNT的安装有一
定困难,这里我们做一个简单介绍。 CVSNT的安装
首先到CVSNT的主页http://www.cvsnt.org下载最新版本,目前是
CVSNT 1.11.1.3 (Build 57f)。
CVSNT的安装有一些注意事项,请读者尽量按照下面所说的步骤来

使用道具 举报

回复
论坛徽章:
2
196#
 楼主| 发表于 2006-7-30 02:11 | 只看该作者
196
进行安装,描述主要针对Windows 2000。如果读者在安装过程中还有问
题,可以参考本文附录的资源中关于CVSNT的安装技巧的文章或邮件列
表。
CVSNT可以安装在Windows NT4 服务器或工作站SP6, Windows 2000
服务器或专业版,Windows XP专业版上。
以管理员账号登陆,首先修改环境变量。直接执行安装程序,很有
可能在最后会出现无法创建路径变量的错误,为此我们首先修改环境变
量,设定路径。假设我们要把CVSNT安装到D:\app\cvsnt目录下(与CVSNT
相关的内容最好安装到NTFS分区上,也尽量不要使用含有空格的目录名
或者文件名,虽然CVSNT已经尽量支持包含空格的目录名和文件名,但
仍有可能出现问题),那么打开控制面板,系统属性,高级,环境变量,
系统变量中的Path,添加上D:\app\cvsnt并保存设置。
接下来可以执行安装程序,修改安装目录,一步步完成安装。
从开始菜单的程序组中启动CVSNT配置程序Configure Server。这
时应该看到服务器还没有运行(CVSNT作为系统服务运行),如果已经
运行了,先把它停下来。
选择第二个选项卡Repositories,首先勾上Repositories prefix
(数据库路径前缀)的选项。CVSNT中只有一个数据库路径前缀,在这
同一个前缀下,可以有多个数据库。相应的,所有的数据库都位于数据
库路径前缀对应的目录之下。这里我们假设数据库都存储在
E:\work\cvsrepo下,点击省略号按钮来选择E:\work\cvsrepo作为数据
库路径前缀。
点击下面的Add按钮添加数据库根,可以有多个。比如我们将/work
作为我们的工作项目的存储根。注意添加时系统自动把已设定的

使用道具 举报

回复
论坛徽章:
2
197#
 楼主| 发表于 2006-7-30 02:11 | 只看该作者
197
E:\work\cvsrepo作为了路径前缀。
选择第三个选项卡Advanced,勾上全部选项,包括Use local users
instead of domain。设置临时目录,假设为E:\work\cvstemp。注意要
保证临时目录的安全设置(右键点击目录属性,共享,权限)给所有帐
号以完全控制权限,包括SYSTEM帐号。并且,绝对不能把临时目录设在
诸如C:\WINNT\TEMP或者C:\Documents and Settings下的任何地方,因
为这些地方对于用户的访问是有限制的。
点击应用以保存设置,这一点相当重要。
现在可以回到第一个选项卡,点击Start按钮,服务应该正常启动
运行了。如果有问题,可以打开一个命令行窗口,输入path命令来检查
路径是否已经设置正确,也许需要重新启动来使设置生效。
打开一个命令行窗口,输入如下命令,用你的实际计算机名和用户
名替代尖括号内的内容,注意对于NT Server,不能用localhost作为计
算机名,必须使用实际计算机名:
set cvsroot=:ntserver:<计算机名>:/work
这一命令通过设定cvsroot这一环境变量,设定/work为目前的cvs
数据库根。这里使用ntserver模式,这一模式比较适合服务器就在本地
的情形。它要求局域网或者域内所有机器的用户帐号相同,客户端使用
Windows NT,Windows 2000或者Windows XP。pserver模式是缺省的,
除非关掉2401端口,下面我们的Eclipse就是使用pserver模式。
cvs passwd -a <你的NT用户名>
这一命令设定CVS中的用户名和密码,输入后将提示你输入密码。
注意如果需要CVS 服务器同时以ntserver和pserver模式运行,那
么密码最好不要和系统中用户的真实密码相同以保证安全。

使用道具 举报

回复
论坛徽章:
2
198#
 楼主| 发表于 2006-7-30 02:11 | 只看该作者
198
这里的用户必须是服务器上的真实用户,不过可以给真实用户设定
一个不同的使用名alias。使用命令:
cvs passwd -a -r <你的NT用户名> <CVS帐号别名>
必须注意,这些名字里最好不要使用任何空格。如果必须的话,可
以用双引号括起来。
到此为止,CVS服务器已经初步设置完成,可以使用了。缺省情况
下,服务器将作为NT服务自动运行。读者既可以使用命令行的CVS命令,
也可以使用各种CVS客户端来连接CVS服务器,执行CVS操作。不过,下
面我们主要介绍在Eclipse中通过内置的CVS支持来使用CVS系统。
二 WinCVS的配置与使用方法
1、WinCVS 简介:
WinCVS是CVS的一个客户端软件,它运行在Windows上,用来在
Windows上登录CVS服务器,然后进行一些CVS相关的操作与管理。由于
当前很多的企业内部都采用Linux/Unix做服务器,而用Windows做客户
端,所以,WinCVS与CVS服务器配合使用将组成最强有力的版本控制与
管理的系统之一。
2、WinCVS 的下载与安装;
最新的WinCVS可以从
http://sourceforge.net/project/showfiles.php?group_id=10072地
址下载到,也可以在http://sourceforge.net/project 上下载到最新
的或其它版本的WinCVS。
下载到相应的版本后根据向导进行安装,已经要使用CVS的用户,
安装这个WinCVS应该没什么问题吧!

使用道具 举报

回复
论坛徽章:
2
199#
 楼主| 发表于 2006-7-30 02:12 | 只看该作者
199
3、配置WinCVS:
a、一般选项的设置,选择Admin->Preferences…,出现如下界面:
第一、Authentication:用来配置cvs服务器的认证方式,可以
从下拉框中选择其它的认证方式,不过一般只要选择默认的pserver方
式就可以,要注意的是必须与cvs服务器配置时所指定的认证方式一致;
第二、Path:用来配置cvs在服务器上的主目录路径,也就是服务
器上用进行cvs初始化的目录,如:/home/cvsroot;
第三、Host Address:用来配置cvs服务器所在服务器的地址,可
以是IP地址,也可以是DNS名,如:10.104.1.204;
第四、User name:用来配置要使用些WinCVS来登录CVS服务器的用
户名,如:cvsyxwu,用户的登录必须由管理员把其添加cvs用户组中;
第五、CVSROOT:此项一般都不需要用户进行修改,用户在输入上
边的几个选项时,系统将自动根据用户的输入生成此项的相应内容。
b、全局选项的设置,在上一个界面上选择“Globals”:
此项的配置主要是要注意这几选项:
第一,Checkout read-only不要选上,否则,checkout出来的源代
码将不允许用户进行
修改,并且此选项默认是选中的;
第二,Prune (remove) empty directories也不要选上,否则,会
自动删除空目录;
第三,对一般配置没有特殊要求的,把Dirty files support、Supply
control when adding
与TCP/IP compression选项选中;

使用道具 举报

回复
论坛徽章:
2
200#
 楼主| 发表于 2006-7-30 02:12 | 只看该作者
200
4、登录服务器:
选择Admin->login,将出现如下对话框要求用户输入登录口令
输入口令后,选择“OK”按钮,如果CVS服务器与WinCVS的配置都
没出错的话,将在CVS的状态栏中提示:
cvs -z9 -d server:cvsyxwu@10.104.1.204:/home/cvsroot
login
Logging in
to server:cvsyxwu@10.104.1.204:2401/home/cvsroot
***** CVS exited normally with code 0 *****
code 0表示正确的登录;而如果出错的话,将是code 1,那么要根
据错误的提示进行相应的修改。
5、从CVS 服务器上check out 相应的模块:
第一,在workspace中的Modules选中要存放checkout模块的目录;
第二,选择Create->Checkout Modeles,将出现如下对话框:
其中,Module name and path on the server就是要存放checkout
内容的目录,由用户输入;而Local folder to checkout to就是第一
中用户所选择的目录。
6、修改之后把文件提交到CVS 服务器
a)、只有一个用户对文件进行修改的情况
用自己喜欢的编辑器对checkout出来的文件进行修改,修改之后的
文件在没有提交之前会是红色的,如下图example.h文件:
选中红色的文件example.h后右击选择“Commit Selection”
选项,如果没有其它用户也对其进行修改并已经提交到CVS服务器上,
一切正常的话将把example.h文件提交到CVS服务器并把图标恢复成原
来的颜色。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表