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引入即可。