翟朋偉先生的 ClearCase 指南-基礎篇連載一 二 三 四

來源:互聯網
上載者:User
圖文版參見:http://wenku.baidu.com/view/89cc1fef856a561252d36ff7.htmlClearCase指南-基礎篇(連載一)

1章 前言 
  . 本文檔凡斜體字即代表進階內容、進階概念、或可選內容,僅作粗略瞭解用,暫不必深入理會。
  . 如下如無特別說明,縮寫“CC”即代表Rational ClearCase;縮寫“VS”即代表Microsoft Visual Studio
2003/2005/Whidbey;縮寫“VSS”即代表Microsoft
Visual Source Safe。
  . 對於代碼開發人員,絕大部分組態管理工作是通過整合了ClearCase的VS.NET來進行的,除卻部分操作,大部分操作在VSIntegration Environment下進行應該更便當些。但本文檔是CC的基礎,也包含部分VSIntegration Environment無法進行的操作,所以,開發人員必須仔細閱讀本文檔 – 單純依靠整合了ClearCase的VS.NET是無法解決所有問題的。
  第2章 ClearCase安裝
  2.1 準備工作
  . 客戶機器必須加入Windwos域,客戶必須用Windows域賬戶登入到自己的機器(即登入到域中),你的ClearCase用戶端才可以正常訪問ClearCase伺服器、你的ClearCase用戶端才可以正常工作。ClearCase使用Windows賬戶作為自己許可權管理的基礎,切! 
  . 網路部分、WINS設定:網路連接、屬性、TCP/IP、屬性、進階、WINS、添加(A)…,加入2個WINS地址:192.168.8.4、192.168.8.6。否則安裝可能失敗,提示如下:

  . 如果用戶端是Windows
2000 Advanced Server,可能因為許可權問題而無法建立視圖,這是我們公司網域服務器帳號同步故障所致。請先退出PDOMAIN域,然後再加入PDOMAIN域,問題應該可以解決。註:其他類型作業系統也可能出類似故障(有時報告“…與網域服務器的信任關係失敗…”),解決辦法同此。 
  . 工作方便起見,你的Windows域賬戶應該同時是你原生管理員(Administrators組)。 
  一切Ok,開始安裝工作。
  2.2 安裝工作
  . 注意:ClearCase必須在Visual Studio.NET(含Whidbey)、Rational Rose之後安裝,否則ClearCase與以上2者的整合將失敗。 
  . 注意:以後如果需要重裝Visual Studio(如Whidbey版本升級)或Rose,ClearCase也必須卸掉重裝、同樣是後裝ClearCase! 
  . 注意:VS.NET+ClearCase安裝、配置好後,如果因為目種原因又安裝了Source
Safe,則VS.NET+ClearCase的整合關係失敗、自動變為VS.NET+Source
Safe的整合關係。如欲返回使用VS.NET+ClearCase整合,則必須卸載重裝ClearCase。 
  . 注意:關於原Source Safe用戶端:
  1、 對於Visual
Studio(平台技術部、應用開發部),用戶端原Source Safe可以保留、不必卸載、以備瀏覽原Source
Safe庫;
  2、 對於Rose(應用設計部),用戶端原Source Safe可以暫時保留,以備瀏覽原Source
Safe庫;當Source Safe到ClearCase的遷移工作徹底完成後,最好卸載用戶端Source Safe,否則Rose與ClearCase的綁定可能(而非絕對)會受到幹擾,每次啟動Rose都需要重設Rose Add-In Manager,以重新綁定到ClearCase!
---- 目前來看,部分人機器環境可能有本綁定毛病。 
  . ClearCase Client安裝啟動路徑:\\uf-net\ClearCaseNetSetup,啟動Setup.exe......可能遇到的、需要幹涉的步驟及解決如下:
  1、 License
Agreement…步驟:當然選擇I accept…、我同意……
  2、 最後一步,提示是否閱讀有關及是否要進入Rational有關網址,不必要,勾掉2個CheckBox。
  3、 除卻安裝路徑(預設:c:\program
files\rational\clearcase)可以修改外,其他配置一律不得修改、須保持預設值! 
  . 安裝完ClearCase後必須重新登入(即Windows登出操作)---- 最好重啟機器、以重新整理你的許可權到ClearCase Server,否則不能操作ClearCase用戶端! 
  第3章 各部目錄結構
  特別提醒:在ClearCase Explore中,你可以看到自己熟悉的目錄、檔案等概念。但其實,其中有些結點、目錄是特殊的ClearCase後台對象(視圖名、VOB、Component),你不要試圖在CC Explore或Windows Explore中對這些特殊的CC Object進行刪除、移動、重新命名等變更操作,否則肯定只會自討苦吃!這些概念你不必太瞭解,記著別變更之即可。 
  這些概念在CC
Explore中View的節點等級關係為:視圖名\VOB\Component\普通目錄、檔案。即Root節點代且僅代視圖名,1級節點代且僅代VOB,2級節點代且僅代Component,其他為普通目錄、檔案。用戶端只能對Component之下的常規目錄、檔案作入庫、Check Out、Check In、重新命名、刪除等操作。 
  這些概念在CC
Explore中的體現參下節:“平台技術部目錄結構”。
  3.1 平台技術部

  3.2 應用開發部

  3.3 應用設計部

ClearCase指南-基礎篇(連載二)

4章 ClearCase基礎
  鑒於大家多少已經使用過一段時間ClearCase或是其他的版本控制工具(如Visual Source Safe、CVS等),關於軟體組態管理SCM的基礎概念如Working Space(工作空間,Source Safe叫Working Folder、CC叫View – 視圖)、Add
to Source Control、Check Out、Check
In、Get Latest Version(Source
Safe)/Update View(ClearCase)、…等,此處只作簡單介紹或即Pass,不作深入講解。
  4.1
ClearCase模式

  ClearCase一共有2種模式:Base模式、UCM模式。不必深究、不必理解、不必區分此2種模式。
  我們使用的是UCM模式。
  4.2 受控元素
  ClearCase管理2種對象:目錄,進入CC後稱Directory Version;檔案,進入CC後稱File Element。2者在CC中統稱為Element(元素)。
  注意:對於個人的私人檔案、目錄,CC
Explore中標示為“Private”類型,CC對私人檔案/目錄不做任何封裝、限制及特殊處理。在ClearCase
Explore(CC用戶端工具)中也可以對之作常規操作如重新命名、刪除、移動等,如同Windows
Explore中一樣、沒有任何例外!
  4.3 靜態視圖
  Static View:靜態視圖,就如Source
Safe,本地有一套CC伺服器上檔案/目錄的副本,可離線工作。靜態視圖下,他人為看到你的Check In成果,必須在自己的用戶端執行一下Update
View命令。 
  建立視圖時(參後續有關章節),記著讓視圖名字首碼上你的大名,以便於管理!
  4.4 動態視圖
  Dynamic View:動態視圖,相對Source
Safe等版本控制工具,動態視圖概念為CC所專屬。動態視圖下,本機通過網路磁碟機來直接存取CC伺服器上的檔案/目錄,本機沒有CC伺服器上檔案/目錄的副本,一旦脫離CC伺服器環境即無法工作,即不能離線。一旦你Check
In,他人如果工作在動態視圖下,可立即看到你的最新成果,他人無需執行Update View命令、Refresh(F5)一下即可。同理,如果你使用的是動態視圖,無須Update
View、Refresh一下你即可看到他人的最新提交成果。
  注意:對於動態視圖,CC會在用戶端建立一虛擬磁碟機(M、X、Y、…),Windows Explore下訪問該虛擬磁碟機,將會看到該視圖的完整目錄、檔案結構,與CC
Explore(後續章節介紹)中看到的一樣。甚至,……

  建立視圖時(參後續有關章節),記著讓視圖名字首碼上你的大名,以便於管理!
  4.5 活動:Activity
  ClearCase中有一個重要的概念:Activity
----活動。
  簽出(Check Out)一個檔案或目錄、把一個檔案或是目錄Add to Source Control(加入版本控制庫)前,必須首先建立一個活動(可以使用一個固有的活動,也可以New一個新的活動),用於記錄你的後續操作之用(未來,通過活動可以反查你對哪些檔案/目錄作過哪些修改)。在該活動基礎上所做的一切修改稱之為該活動的“變更集”。 
  1、 活動命名規範:
  a、 “人名”用Windows域帳號;“日期”為YYMMDD格式。
  b、 代碼類:人名__模組_活動簡述_日期,如:zpw_Workflow_條件轉移介面定義_040205
  c、 PubRef共用引用、資源檔提交:PubRef_人名__模組_日期_......,如:PubRef_Lyguo_Workflow_040324_WfEngine表李玉國提交工作流程的Engine組件。
  d、 文檔類:Doc_人名__模組_日期_......,如:Doc_fjz_Service_050124_設計文檔
  e、 …… 
  2、 定義活動時,不僅應該命名規範、有意義,還應當給予適當注釋。
  5章 CC用戶端:ClearCase
Explore

  本章包括如下內容:建立視圖、配置項入庫、簽出、簽入、更新視圖、活動建立。
  通過本章學習,普通用戶端將可以藉助ClearCase實現常規的組態管理工作。當然,藉助CC與VS、Rose的整合功能可能更方便些,但嚴格來說,CC與VS、Rose的邦定整合不屬組態管理範疇! 
  常規人員和CC打交道的工具只有一個:ClearCase Explore ---- CC的用戶端GUI工具。
如下為CC用戶端、ClearCase Explore主介面:

  通過CC Explore,不僅可以實現組態管理的常規操作(建立視圖、配置項入庫、簽出、簽入、更新視圖、…),還可以直接進行普通檔案/目錄的常規操作:建立、刪除、移動、重新命名等。
  5.1 建立視圖
  用戶端必須首先建立視圖才能展開日常組態管理工作。 
  用戶端通過ClearCase
Explore.Toolbox\Base ClearCase\Create View工具 + 生產力,把伺服器端一個配置好的ClearCase
Project所包含的有關檔案、目錄元素下載到本地,建立起自己的視圖。
  5.1.1 步驟零:建立個人View Storage
  CC中,每個View都必須關聯一個View Storage,伺服器需要通過View
Storage與用戶端通訊。
  View Storage很簡單,就是一個普通的Windows共用目錄。每個人都需要在自己的機器上建立自己的View Storage共用目錄(共用許可權應僅對自己開放),建立視圖時,輸入該共用路徑即可!
  方便起見,所有人的ViewStorage的共用目錄名字統一為:“ViewStorage”:

  5.1.2 步驟一:啟動Create View
  啟動Create
View工具 + 生產力(ClearCase Explore、“Toolbax”Tab頁、“Base ClearCase” Panel、“Create View”Button): 

  5.1.3 步驟二:選擇Project
  選中目標Project(本步驟及後續步驟為講解用,實際工作中,需要加入或基於合適的CC Project如:平台技術:U9.UBF.***、應用設計:U9.Design.***、應用開發:U9.App.***)
,下一步繼續:

ClearCase指南-基礎篇(連載三)

5.1.4 步驟三:開發流、整合流
  關於開發流(Development
Stream)、整合流(Integration Stream):
   開發流、整合流為伺服器端概念,可簡單理解為伺服器上的2個隔離儲存區 (Isolated Storage)空間,特定階段、特定版本集的檔案、目錄即存放在流中。
   開發流概念用於分支、隔離開發用,目前不使用,所以要勾掉“Create
a development stream”

  5.1.5 步驟四:檢視類型
  決定檢視類型:選擇產生靜態整合視圖(我們暫不使用開發流,也就無開發檢視類型選擇問題,所以下上半部開發視圖部分為空白),下一步繼續:

  5.1.6 步驟五:View本地存放路徑及View Storage設定
  本步驟非常關鍵,請大家務必重視:
   預設視圖名字前系統會自動首碼上你的名字,便於監控、管理,不要刪除,切切!
   用戶端每建一個視圖,伺服器端即會作相應登記(Register)。
   如果你是第一次基於某個Stream(我們的例子是U9.UBF.Mailline流)建立一個View,則此次視圖名字應該是形如“zpw_U9.UBF.Mainline_int”、名字中無“_2、_3、_4、…”等字樣。
   如果你以前基於某個Stream已經建立過一個View,則此次視圖名字中會包含建立次數資訊、名字中將包含“_2、_3、_4、…”等字樣(如本例)。對同一個流(CC後台儲存區)建立多個視圖雖然不違法,但可能給你帶來意想不到的麻煩 – 除非你出於一定的目的有意識這樣做:你的本機可能有多個副本,而你可能無意識地選擇工作於任何一個View,多處修改代碼還不自知,等到知道,可能已經很難處理了!

  註:第一個中,點擊“Advanced
Options…”按鈕後,第二個中點擊“Browse…”按鈕,找到你的View
Storage共用目錄(也可以在上View Storage文字框直接輸入共用目錄路徑如:\\zpw\ViewStorage),當找到一個合法的共用目錄後,View Storage TextBox中內容自動改變為View名字(如的zpw_U9.UBF.Mainline_2_int),不要修改之,級次Ok後返回確定即可……
  5.1.7
步驟六:Choose Component

  Component系CC後台概念,簡單理解為分類樹即可。選擇你需要訪問的Component(一般是全部選擇),然後繼續:

  5.1.8 步驟七:盤點結果
  一切Ok……,轉ClearCase Explore,會發現View\下增加了一個與你所Join的Project同名的選項卡(我們的例子中叫“U9.UBF.Mainline”)。其中建有我們剛剛建立的整合視圖(zpw_U9.UBF.Mainline_int):

  視圖建立完畢,你就(才)可以基於視圖展開常規的組態管理工作:進配置庫、簽出、簽入、更新視圖等工作。
  5.2 配置項入庫:Add to SourceControl
  視圖建立完畢,該是配置項入庫的時候了。所謂配置項入庫,即把本機私人檔案、目錄加入ClearCase使之變為ClearCase受控元素。步驟如下: 
   註:命令列有批量入庫命令,很簡單,略。
   Windows Explore中Copy需要入庫的配置項。
   ClearCase Explore中Paste到目的地(Component根下或Component的某子孫目錄下,普通目錄可以在CC Explore中直接建立)
   選中需要入庫的檔案或目錄(可多選),執行右鍵菜單“Add
to Source Control”…如,一次把2個檔案加入ClearCase使受控:

   彈出表單中需要選擇一既有活動或可建立一新的活動,以關聯本次動作。最後確定即可。如:

  注意:
  A. 把一個目錄下任何一個Private檔案加入ClearCase後,該目錄均將同時自動加入ClearCase變為受控元素 – 目錄私人的話。
  B. 把一個目錄Add
to Source Control…後,其中子目錄及檔案均不會受影響 – 如為Private則仍將保持Private狀態。
  C. 子影響父,父不影響子:一個檔案如加入ClearCase,其所在父目錄必被自動加入ClearCase(至於爺爺目錄,CC不考慮處理);反之則No。
  D. 對於代碼類或Rose模型,在Visual Studio、Rose中藉助與ClearCase的整合功能可實現批量入庫(及自動過濾),應該更簡單些。後續章節專題介紹。

ClearCase指南-基礎篇(連載四)

 

5.3 簽出:Check Out
  Check Out出ClearCase受控元素,然後修改之,最後Check In提交之,其他人員通過Update
View命令即可獲得該元素的最新結果(僅靜態視圖需要,動態視圖不必Update View)!
VS、Rose中,有相應ClearCase整合,功能一樣,專題介紹。 
   Check Out一個檔案,如,既可以繼續使用一個既存的活動,也可以使用New按鈕定義一個新的活動(很簡單的一個表單,略):

   Reserved CheckBox:獨佔式、非多簽出,只要你不簽入提交,其他人就不能再簽出修改該檔案、目錄。
   特別提醒:除非實在有必要,絕對不要Check
Out出來一個(普通)目錄,除非你能記著及時Check In之,否則可能導致很多檔案、目錄的狀態異常,很難處理。
  5.4 簽入:Check In
  提交個人成果到伺服器。
   批量提交:尋找整個視圖所有被修改(正常修改及Hijacked檔案)的檔案,以實現批量簽入提交。涉及Find Modified Files、Find
Checkouts右鍵快捷命令。
   選擇提交:如果只是想提交個別檔案、目錄,可選中目標,然後右鍵執行Check
In……本手冊不做詳細講解。
   VS、Rose中,有相應ClearCase整合,功能一樣,專題介紹。
  5.4.1 Hijacked檔案
  本節非常重要,所有人必須重視: 
  檔案即未經CheckOut即被強制修改,ClearCase即置其為Hijacked狀態。Hijacked檔案將影響到Update View等操作,具體參隨後章節。 
  檔案變成Hijacked狀態有2大類原因:
   不正常、非故意、不小心所致:忘記Check
Out,Windows Explore中直接開啟強制修改(通過相應工具如Word改檔案內容 或是 使用Copy/Paste命令覆蓋原檔案)。
   正常、故意所致:如網路斷、回家、出差在外,無法訪問CC
Server,而修改工作需要繼續,又希望未來提交強制修改結果。
  對Hijacked檔案可以有2種處理辦法:認可強制修改,先轉Check Out接著再Check In;放棄該強制修改:Undo Hijacked
File。
  5.4.2 Find Modified Files
  5.4.2.1 Find Modified
Files步驟一:尋找

  對整個視圖尋找所有被修改(正常修改及Hijacked檔案)的檔案(註:必須選中視圖名,否則右鍵菜單中無“Find Modified Files”命令!):

  5.4.2.2 Find Modified Files步驟二
  尋找結果如下(我們的結果中有Hijacked檔案(紅線提示部分)):

  5.4.2.3 Find Modified Files步驟三
  Close後進入如下介面,提示有Hijacked檔案,要否先直接CheckOut出來。因為不好判斷該非法修改(沒有CheckOut的修改)是否有意義、值得接受,先選擇No(小心,預設是Yes!!!),此時進入Find Modified Files匯總介面(後面介面)。左側CheckdOut檔案夾指示被Check Out出來並被修改過的檔案集合(存在於右側),Hijacked檔案夾指示未經CheckOut而被非法修改的檔案集合(點該檔案夾後,所有Hijacked檔案將重新整理於右側):

  因為下節還有FindCheckouts操作,二者的Find結果的處理方法一樣,所以對Find結果的具體處理參下下節。
  5.4.3 Find Checkouts 
  (Find
Modified Files命令)Find不到的CheckOut檔案處理。
  有時候還有一些被Check
Out(可能沒有修改的)檔案通過上述Find Modified Files方式竟然找不到(以前ClearCase的Bug???!!!)!為此,必須用其他方式繼續尋找遺漏的(?)Check
Out檔案。尋找方法是選中視圖的第一級目錄(而非視圖本身!),然後執行右鍵Find Checkouts命令 –〉Ok –〉進入一個Find Checkouts視窗,類同於上Find Modified Fiels命令結果視窗,處理手法完全相同,略:

  5.4.4 Find結果處理—有修改CheckOut檔案
  普通CheckOut檔案有2種處理方式,Check In(修改認同、提交)或Undo
CheckOut(放棄該修改版本),2個命令均可處理單個檔案或批量處理:

  5.4.5 Find結果處理—未修改CheckOut檔案
  還有一種CheckOut檔案比較特殊,就是Check Out出來了,但是沒有修改,如此有2種處理辦法:強制性Check In(增加一個和前版本完全相同的版本,浪費)或是Undo
CheckOut。為此需要Crowdsourced Security Testing道它有沒有被修改,然後才能作決定,問題是沒有直觀辦法知道它到底有沒有被修改!所以,正確做法是如上面的介面一樣先Check
In所有Check Out檔案,對於沒有修改的檔案Clear
Case將在Check In的過程中提示你該檔案內容同於上一個版本,不能Check
In(),則確定之,繼續。當所有Check In完畢後,Find
Modified Files的結果表單將重新整理,剩下的仍為Check Out狀態的檔案即為無實質修改的檔案,全部選中,Undo
Check Out即可!

  如果你足夠懶,不想如此麻煩,不管三七二十一所有Check
Out檔案均想Check In進去,也可以,方法是Check
In時(會彈出一個選項設定表單)選中一個選項,參:

  5.4.6 Find結果處理— Hijacked檔案
  對Hijacked檔案可以有2種處理辦法:
   認可強制修改,先轉Check
Out接著再Check In。
   放棄該強制修改:Undo
Hijacked File。

  5.5 更新視圖:Update View
  僅限靜態視圖。對於動態視圖,系統會自動定時更新到本地(特殊檔案儲存),Refresh一下即可。
   更新整個視圖:點擊CC
Explore中的資料夾窗格,執行右鍵菜單“Update View…”命令。
   更新視圖的某個分類樹:點擊該分類樹的根,執行右鍵菜單“Update…”命令。
  5.6 檔案/目錄的刪除、移動、重新命名
  務必重視:對檔案、目錄的此3大操作只能在CC Explore中進行,絕對不能在VS、Windows Explore中進行,否則肯定出嚴重問題,切!切!
  此3大操作不必你自己簽出、簽入有關,系統會自動執行。
   重新命名、刪除:CC
Explore中有相應右鍵捷徑功能表,直接執行、提示確認即可。
   移動:CC
Explore中有相應右鍵捷徑功能表,直接執行、提示確認即可。需要注意的是,移動必須是自右向左拖、自“瀏覽器窗格”拖向“資料夾窗格”,而無法自“瀏覽器窗格”拖向“瀏覽器窗格”,更無法自“資料夾窗格”拖向“資料夾窗格”。
  5.7
版本樹、版本比較:Version Tree

  右鍵捷徑功能表有,進階知識、略。
  5.8 版本曆史查看、比較:History
  右鍵捷徑功能表有,進階知識、略。
  5.9 刪除視圖有關
  一個視圖的資訊儲存在2個地方:用戶端、伺服器。欲徹底刪除視圖,只能在ClearCase Explore中選中視圖,然後執行右鍵快捷命令“Remove
View”(而非“Remove Page”)來達到目的!
  務必注意:刪除視圖後,本機視圖副本也將徹底被刪除、包括裡邊的私人檔案、目錄,務必三思!
  絕對禁止通過Windows
Explore直接刪除本機視圖副本,否則遺患無窮!
  重度提醒:卸載ClearCase,重裝機器、退還機器之前,務必記著先刪除機器上有關ClearCase視圖,否則也是遺患無窮!
  再次提醒:刪除視圖後,本機View
Storage共用目錄下該視圖的相應.vws目錄也將一併被CC幹掉,絕對禁止通過Windows Explore直接刪除View
Storage共用目錄及其下任何內容,否則後患無窮!
  禁止在CC
Explore中執行“Remove View Shortcut”命令,有隱患!
  刪除視圖前必須檢查當前視圖中是否有處於檢出(CHECKOUT)狀態的檔案(可通過Find Checkouts工具實現);如有,則在將這些檔案checkin或undo checkout後方可刪除視圖。
(完)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.