2.2.6 环境的准备
图五:配置系统架构图
上图是Rational建议的服务器的配置的逻辑视图。以下是一些要求:
网络要求
ClearCase支持客户/服务器(C/S)以及浏览器/服务器(B/S)两种使用方式,要求客户机和服务器通所在的网络环境支持TCP/IP,局域网均能满足要求,建议100兆以太网。
操作系统要求
如果在Windows环境下部署ClearCase,首先应满足ClearCase要求的平台条件(如Windows2000需SP2以上等),其次需要所有开发机器均在要加入Windows域以进行统一的用户校验和安全性管理。如果在Unix环境下部署ClearCase,同样需满足ClearCase要求的Unix条件(如打上ClearCase需要的操作系统补丁等)。
硬件要求
Windows环境下,VOB Server建议CPU P3-1GHz以上,内存512MB以上,硬盘空间80GB以上,如果有可能,好采用服务器。
如果单纯从性能考虑,VOB Server好采用UNIX系统,但是在实际情况中要考虑到易用性等,如果项目组成员大多数采用Windows平台进行开发,建议还是使用Windows系统做为VOB Server,因为如果采用UNIX VOB Server,如果想在Windows平台上使用Dynamic View会有一定的困难。
在实际中可以将VOB Server与License Server及Registry Server配置在一台机器上。这些Server中只有VOB Server与View Server的对配置的要求比较高,而且一个Registry Server上只能启动一个Windows Region与UNIX Region,所以建议每个项目配置一个Registry Server,配置项目自己的Region。
在实际使用过程中,初所有的View均保存在项目组成员的机器上,但是在使用中出现一系列问题,如果项目足够的资源,建议配置一个独立的View Server,项目组成员的所有Dynamic View要求必须建立在View Server上。
在环境的准备过程中,要考虑到开发人员的开发习惯与测试环境等问题,决定VOB Sever是安装在Windows平台还是安装在Windows平台。在决定安装平台后,要根据开发模式确定是否安装Web Server,如果项目会有大量的在外支持的工作,并要求在客户现场修改代码,建议安装在办公网段,这样可以通过外网进行访问;如果是产品项目在公司内部研发,没有远程修改的需求,建议安装在实验网段。
在Server安装完成后,要根据代码保密与配置管理等原则等将所有的用户与用户组在域中建立,并将网络安装包共享给用户使用,要注意有是在某个域上安装了ClearCase客户端后,并不能直接在另一个域上使用,需要修改Atria Location Broker这个服务中启动用户与密码,所以在安装完成后,不能对clearcase_albd的密码进行改动,所以clearcase_albd这个用户设置中一定要注意设置密码永不过期。如果一个项目组成员想在不同的域并且这些域之间没有信任的情况下都使用ClearCase,只能安装两套操作系统,在每个系统上都安装ClearCase客户端。
2.2.7 旧版本的整理与版本的迁移
在服务器安装完成后,要考虑旧版本的整理,如果只是简单的将VSS与CVS的全部配置项移到ClearCase中去,只是将ClearCase当做VSS与CVS使用,使用ClearCase也没有什么意义,所以要将旧有的配置项进行整理。这项工作应在配置库的逻辑视图与物理视图确定之后开始,一直持续到版本的迁移。
在整理旧有的配置项时要先将原有的VSS或CVS配置库进行备份,而后在备份的配置库进行整理,以防止对工作中的配置库造成损坏。版本整理的时候可以将文档与代码重新按照Component结构设置。
在VSS中为了工作方便,常常将工作库,受控库与基线库分离,而且VSS的分支功能并不是很好,针对不同的客户修正一般都会新建一个目录来进行修改,同一个配置项在配置库中存在多个副本,为配置管理带来许多人为的不可控因素。
在整理VSS配置库时,一般情况下文档部分可以只采用Get last version的方法,取出新版本,按规定放入Component即可;代码的处理有所不同,如果所有的代码在VSS配置库中只存放在一处,之后在此基础上设置label,则可以应用命令clearexport_ssafe与clearimport将其导入,在导入结束后将所有的label导入到相应的Component上即可;如果有多处副本只能将每处副本的相应基线应用get last version命令取出,而后将用clearfsimport导入Clearcase,之后在相同目录下重复以上动作,要注意的是每次clearfsimport后要建立一个基线。
针对一些有长年积累,在VSS上有多个目录存放不同的版本的项目,不要有必其功于一役的不切实想法,应先整理以前的版本,找出几个主要版本树,将各个版本之间的关系理清楚,之后将几个版本树按以上的方法导入。
如果源代码在原项目中是应用CVS进行配置管理,一般情况下,在CVS中没有副本存在,可以应用clearexport_cvs命令与clearimport命令导入好可。
在应用clearimport时要注意,如java中文件名是区分大小写的要应用clearimport -p,具体方法可以应用cleartool man clearimport来查看帮助。
2.2.8 客户端的安装与培训
每个项目在安装时要根据安装手册制定本项目自己的安装手册,根据项目实际情况修改后发布给项目使用。在所有的客户端安装后,项目配置管理工程师要准备培训材料对项目组成员进行培训,培训中要讲清楚项目的PVOB、开发模式、Component的设置、分组与权限的设置、Stream的设置、项目配置的Policy、Activity的命名准则、Deliver与Rebase的要求等实际情况,而不是只讲共性的一些东西。
2.2.9 试用
如果大部分项目组成员以前没有过ClearCase的使用经验且进度允许,则在客户端安装及培训完成后,要在项目组内部进行试用,以让项目组成员熟悉;好是ClearCase与VSS或CVS并行使用一周左右时间,然后再将配置管理完成切换到ClearCase。
3 VSS迁移的步骤
3.1 一些前提条件
3.1.1 软件安装
必须在ClearCase的VOB端安装VSS服务器程序。
3.1.2 用户权限
对于Visual Source Safe,要以对Visual Source Safe系统中所有工程/文件均具有完全权限的身份操作;
对于ClearCase一侧,要ClearCase管理员的身份操作;
因此在迁移时,好选用同一个帐号(口令亦相同),同时具有以上两个权限。
如果你的ClearCase帐号不具有以上权限,请与你的系统管理员联系。
3.1.3 日期/时间格式
在迁移过程中,ClearCase对时间要求比较严格,且用到的是短时间格式,具体设置如下:
1、 打开控制面板的区域设置属性;
2、 在时间栏中,将时间样式设为"h:mm:ss tt";
将时间分隔符设为":";
将上午符号设为"AM" ;
将下午符号设为"PM" ;
注意以上设置值的大小写!
3、 在日期栏中,将短日期样式设为"M/d/yy";
将日期分隔符设为"/" ;
设置完后可查看资源管理器中文件的时间属性以检查上述设置的正确性。正确的修改应为:5/21/01 11:00 AM
3.1.3.1 环境变量
为方便操作,可添加以下系统环境变量:
变量名PATH
变量名
??Microsoft Visual Studiovsswin32;
//VSS中ss.exe路径
??
ationalclearcasein;
??
ationalclearcaseetc;
//ClearCase中clearexport_ssafe.exe路径
以上
??用户实际应用程序路径。
设置ssdir环境变量为vss数据库文件的路径;
设置ssuser环境变量为vss登录用户名(为方便使用,可将该用户的密码设为空).
ss dir: 显示当前的Project;
ss cd $/SW:设置当前的Project为SW;
ss whoami:显示当前的登录用户;
设置完毕后,可在命令行界面下运行path查看以上设置是否生效。
3.2 建立VOB
建立VOB需要注意的是当前的用户与主组,建立用户时的用户与主组是VOB的Owner与Group,但是有时会出现用户的主组并不是所期望的Group,这时可以应用命令修改vob的owner与group。
cleartool protectvob -chown
user -chgrp
group -r
VOBPNAME
3.3 建立General View
在建立VOB可以建立general view,以后所有的迁移都是在general view下进行的,这时可以不必关心view的owner。在建立View时要注意一定要将View建立为Dynamic View,并映射为本地的一个盘符,在稍后的操作中所有的操作都是以命令行方式进行。
3.4 备份要迁移的VSS配置库到VOB所在的机器
备份的目录主要是可以根据迁移的需要对目录进行修改,而不会影响VSS配置库,所有的迁移的操作都是针对备份到VOB所在机器的配置库进行的。
3.5 设置VSS的工程目录
进行命令行模式,执行ss cp获得当前的工程目录,如果不是要迁移的目录执行ss cp $/要迁移的目录/,注意这时迁移的是当前目录的子目录,如果想包括当前目录,请到当前目录的上一级目录,这时如果只想备份上一级目录的部分子目录可以将其他目录删除,这时可以看到用备份的VSS配置库进行操作的好处了。
3.6 生成迁移所需要的文件
VSS的工程目录确定后,执行clearexport_ssafe -r -o生成迁移所需要的文件。例:
Clearexport_ssafe -r -o e: estexportdata
3.7 迁移
进入general view所对应的映射盘,进入VOB所在的目录,如VOB名为Test_VOB,general view映射为Y盘,则cd y:
cd Test_VOB
确定是否迁移到当前目录,如果要建立子目录要注意,用命令行建立的子目录实际并没有在VOB中建立,要在Rational explorer中建立子目录,并确认子目录的类型为Directory Element才可以。
进入要迁移的目录后执行clearimport e: estexportdata,注意如果是java等代码要区分大小写,要加参数clearimport -pcase e: estexportdata
3.8 后续步骤
将当前数据迁入后打一个label,并Apply;将VOB或其子目录Import为Component,而后在Component上执行Import Baseline,将刚打的label引入即可。