VSS 的全稱為 Visual Source Safe 。作為 Microsoft Visual Studio 的一名成員,它主要任務就是負責項目檔案的管理,幾乎可以适用任何軟體項目。
源代碼版本控制機制是現代軟體開發中必不可少的管理機制之一,通常借助版本控制軟體即Source Code Management(SCM) systems或者Version Control systems來實作。版本控制在軟體開發中的重要作用如下:
1)作為代碼倉庫有效的管理軟體開發中各個不同版本的源代碼和文檔,占用空間小并且友善各個版本代碼和文檔的擷取。
2)對開發小組中對源代碼的通路進行有效的協調(不同的版本控制軟體采取不同的協調政策)。
常用的版本控制軟體有Clearcase, CVS, PVCS和Microsoft公司的Visual SourceSafe (VSS)。下面對Windows平台開發最常用的Visual SourceSafe 6.0進行簡單介紹。
運作環境
Windows平台下使用VSS開發的典型環境是基于C/S架構的,即開發小組的每個開發者在各自的Windows平台下利用開發工具(比如VC)開發項目中的各個子產品,而配有專門的伺服器集中控制開發過程中的文檔和代碼。伺服器和開發人員的客戶機分别裝有VSS的伺服器和用戶端程式。
安裝
VSS6.0伺服器的安裝
第一步,将Visual Studio6.0的CD1放入CD-ROM,自動進入安裝程式,選擇第二項“Server Applications and Tools(Add Only)”;
第二步,然後在“Server Setups”的“Server Components”中選擇“Visua l Source Safe Server”,按“Install”按鈕後,根據提示放入CD2;
第三步,根據Installation Wizard的提示,繼續安裝過程,選擇安裝路徑,直至提示你重新開機以使新安裝的程式生效,重新開機計算機。
VSS6.0用戶端的安裝
在VSS6.0伺服器安裝完畢後,就可以在VSS管理者的指導下安裝用戶端的軟體。由于我們是在一個Windows環境的子網内,每台PC客戶機均可通過網路上的芳鄰來通路VSS伺服器。在VSS管理者為使用者指明VSS用戶端軟體的安裝程式“Netsetup.exe”的位置(VSS伺服器安裝目錄内)後,使用者可以直接通過資料總管“Explorer”在網路上的芳鄰中找到該程式,并輕按兩下以運作它。 Netsetup.exe被啟動後進入VSS用戶端的安裝,在提示框中輸入使用者名和工作組名,選擇VSS的安裝路徑後,點選安裝圖示,進入實際安裝步驟,以後的工作将由系統自動完成。
使用說明
VSS使用過程中要遵循的是lock-modify-unlock流程而不是 copy-modify-merge流程(比如CVS),即開發人員首先将自己要修改源代碼和文檔從VSS伺服器主備份檔案上checkout到本地同時鎖定伺服器上的源代碼和文檔(multi - checkout情況除外),修改完成後checkout到伺服器上同時解除伺服器上檔案的鎖定。伺服器集中控制所有的源程式和文檔。
VSS使用中涉及到的概念
1) 項目(project),所謂的項目是一組存在VSS中的檔案(任何類型),可以在項目中或是項目之間進行檔案的添加、删除、編輯和共享。一個項目與作業系統的檔案夾有很多的相似之處,但它更好地支援檔案合并、曆史和版本控制。所有的檔案存在VSS資料庫的項目中,開發組成員不能在VSS中的伺服器主備份檔案上工作(除了檢查和版本比對等特殊情況外)而是VSS為每個成員在各自的工作目錄(workfolder)下提供一個拷貝以供工作。盡管在沒有工作目錄的情況下也可以檢視某個檔案,但如要真正在VSS管理下工作,就必須要建立一個工作目錄。
2) 工作目錄(workfolder)是使用者真正對項目檔案進行調試修改的地方,當使用者checkout檔案時,VSS将就将檔案拷貝到使用者的工作目錄下,當使用者修改了該檔案并将其checkin時,VSS再将它從使用者的工作目錄拷回到VSS 的資料庫中。在使用者作checkout時,VSS将會自動管理他的工作目錄,諸如建立必要的子目錄。而且工作目錄可以随時建立或修改。
3) 版本跟蹤。VSS提供版本控制和曆史服務,而且老版本程式和文檔能夠被重新得到以便進行bug跟蹤或其他目的。VSS用日期/時間戳來記錄檔案是何時被checkout或是何時被修改的,它主要有三種方法來跟蹤檔案和項目的版本:
版本号:這是由VSS維護的内部數位,使用者對它沒有控制權。每個檔案和項目的每個版本都有一個版本号,這些版本号總是一個整數且是遞增的。
标簽(label):這些是使用者賦給某個項目或檔案的某個版本的一個字元串,可以是任何格式的長度不超過31字元的字元串。推薦使用。
日期/時間戳:它給出了一個檔案何時最後被修改的資訊,或者是一個檔案何時被checkin。VSS同時支援 12小時和24小時的時間格式。
VSS6.0伺服器的配置和管理
在VSS6.0伺服器安裝完畢後,就可以針對開發項目進行VSS伺服器的配置和管理,這些工作均需由VSS管理者來完成。
第一步,為整個項目建立一個VSS資料庫(在VSS伺服器安裝時,系統已經建立了一個預設資料庫Common),啟動Visual SourceSafe6.0 Admin(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Visual Sou rceSafe6.0 Admin),跳出對話視窗,點選下拉菜單Tools中的Create Database ...菜單項,将出現對話視窗,選擇新資料庫的路徑,例如建立MyApp資料庫,然後點選OK按鈕,系統将完成建立工作。
第二步,為新建立的資料庫(例如MyApp)建立使用者,首先需要打開該資料庫,點選下拉菜單Users/Open SourceSafe Database...,然後選擇資料庫MyApp并打開。再選擇菜單項Add User...,輸入使用者名和密碼。然後依次建立其他的使用者。可以為不同的使用者設定針對不同項目檔案夾的不同存取權限,存在兩種方法:1)使用VSS提供的功能。選中Tools/Options…對話框中Porject Security屬性頁的Enable Project Security複選框并選擇Tools/Rights by Project…或者Tools/Rights Assignments for User…進行設定;2)使用windows作業系統的cacls指令。
第三步,在該建立的資料庫中建立項目Project。啟動Microsoft Visual SourceSafe6.0(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe6.0),出現對話視窗,點選下拉菜單File中Open SourceSafe Database...,跳出對話框,選擇一個資料庫(例如MyApp),輕按兩下它或按Open按鈕打開該資料庫;一個項目Project是一組相關的文檔或者是一個檔案的集合,VSS允許你以任何的層次結構來存貯群組織你的項目。在VSS資料庫中,你可以建立一個或者多個項目。點選菜單File中的指令Create Project...,建立一個項目,例如MyProject;建立完項目MyProject後,需要向MyProject中添加檔案,點選File中Add Files指令,将跳出對話框,選擇相應檔案或目錄,點選Add按鈕,将它們添加到MyProject中去。
至此VSS伺服器的配置到此基本上已經完成了,建立了資料庫和項目,并為它們建立了相應的使用者,這樣使用者在用戶端就可以直接登入到VSS伺服器上,進行在VSS控制管理下的開發工作。
注意:關于伺服器主備份檔案的目錄結構應該在項目開發前确定并征得全體開發人員得同意。實際使用過程中,如果發生伺服器主備份檔案目錄結構不合理或者需要臨時增加删除一些檔案的情況,VSS管理者有責任集中進行處理。
VSS6.0用戶端的使用
下面以實驗室資料倉庫項目具體執行個體說明VSS用戶端使用步驟。
第一步,登入到VSS伺服器。啟動Microsoft Visual SourceSafe6.0用戶端(Start/Programs/Microsoft Visual Studio6.0/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe6.0),出現如下登入視窗;
點選Browse…按鈕,出現下面對話框;
再點選Browse…按鈕,選擇下圖所示的目錄(DBGROUP伺服器上的共享目錄,如提示輸入DBGROUP伺服器帳号密碼則分别填寫vss/vss);
單擊打開按鈕并在随後出現的兩個對話框上單擊OK和Open;
重新回到登入對話框;
輸入管理者指定的使用者名和密碼,即登入到了VSS伺服器上。
注意:不同得使用者和密碼設定對不同目錄(project)有不同的通路權限。
第二步,如果是第一次登入到VSS伺服器,還需要先設定工作目錄,否則無法進行checkout操作。
工作目錄的設定如下圖所示,選中自己相關子產品的檔案夾,單擊右鍵,選擇Set Working Folder…;
在彈出的對話框中選擇自己所設定的工作目錄并單擊OK;
注意:工作目錄設定完成後,伺服器上的檔案checkout後均放到該工作目錄中,是以本地機器上的工作目錄應收到保護不能随意删除移動。
第三步,checkout檔案到本地工作目錄中。選中相關的檔案夾,單擊右鍵并選擇Check Out…;
系統彈出checkout對話框如下,單擊OK後該目錄下所有檔案和子檔案夾即checkout到了本地工作目錄同時伺服器上的檔案被鎖定呈紅色,其他使用者不可以再checkout該檔案夾(伺服器設定為不允許multicheckout)。
注意:一定要選中Recursive複選框以保證所有子檔案夾被checkout。
第四步,對本地工作目錄當中的檔案進行修改調試。
第五步,将工作目錄中的檔案checkin。如果不将修改後的檔案checkin則第四步中對檔案的修改無法反映到伺服器上項目檔案的主備份中,而且極有可能導緻下次checkout後本地檔案被舊版本檔案覆寫的情況。在VSS用戶端視窗中選中要checkin的檔案夾單擊右鍵選擇Check in…,彈出checkin對話框,單擊OK則本地工作目錄中的檔案checkin到了伺服器上同時伺服器上的檔案解除鎖定(變黑)。
注意:一定要選中Recursive複選框以保證所有子檔案夾被checkin。
建議1
在實際使用過程中,開發人員或者管理者有責任對伺服器上的源程式和文檔定期或不定期的做相應Label,以友善源程式和文檔曆史版本的管理。VSS可以友善的根據Label擷取各個曆史版本(有其他擷取曆史版本的方式,本文推薦使用Label方法)。
添加Label。選中要添加Label的目錄(project)單擊右鍵選中Label…;
設定Label對話框中填入Label名稱和相關Comment,如下圖所示;
如果要擷取某一曆史版本,選中相應的目錄(project)并選擇Show History…,如下圖所示選擇相應複選框并單擊OK;
VSS彈出下面對話框,其中列出了所有管理者所作的Label,選中相應的Label,然後單擊Get按鈕則做Label的相應版本就會checkout到本地工作目錄中。其他按鈕的使用參見幫助;
建議2
開發人員請不要随意變更VSS伺服器上的目錄(project)結構,不要在目錄(project)中随便增加删除檔案,不要随便通路他人目錄(project)及檔案。如伺服器上目錄(project)結構确實需要變化請與管理者聯系。
建議3
嚴格遵守VSS的使用規程,防止因誤操作導緻程式或者文檔的丢失。如遇兩人需同時修改統一目錄(project)或檔案的情況,請串行處理而非multicheckout方式處理以減少出錯幾率。
VSS:地或電源負極
VSS表示連接配接到場效應管的源極(S)的電源。
本文來自CSDN部落格,轉載請标明出處:http://blog.csdn.net/qianguifen/archive/2009/04/07/4054705.aspx