源代碼版本控制的幾種方法


其實早在之前我就開通了博客園,但是一直沒開通博客,所以到現在還沒寫過博客!!!!

今天是我第一次寫博客,我要分享一下我實習以來用過的源代碼版本控制的兩種方式:VSS (Visual SourceSafe) ,SVN(Subversion)

下面我們來分別看下這兩種源代碼版本控制的使用方法以及好處:

《一》VSS的使用方法

1.作用

源代碼版本控制機制是現代軟件開發中必不可少的管理機制之一,通常借助版本控制軟件即Source Code Management(SCM) systems或者Version Control systems來實現。版本控制在軟件開發中的重要作用如下:

1)作為代碼倉庫有效的管理軟件開發中各個不同版本的源代碼和文檔,占用空間小並且方便各個版本代碼和文檔的獲取。
2)對開發小組中對源代碼的訪問進行有效的協調(不同的版本控制軟件采取不同的協調策略)。
常用的版本控制軟件有Clearcase, CVS, PVCS和Microsoft公司的Visual SourceSafe (VSS)。下面對Windows平台開發最常用的Visual SourceSafe 6.0進行簡單介紹。
 
2.運行環境
Windows平台下使用VSS開發的典型環境是基於C/S架構的,即開發小組的每個開發者在各自的Windows平台下利用開發工具(比如VC)開發項目中的各個模塊,而配有專門的 服務器集中控制開發過程中的文檔和代碼。服務器和開發人員的客戶機分別裝有VSS的服務器和客戶端程序。
 
3.安裝步驟
第一步
將Visual Studio6.0的CD1放入 CD-ROM,自動進入安裝程序,選擇第二項“Server Applications and Tools(Add Only)”;
第二步
然后在“Server Setups”的“Server Components”中選擇“Visual 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的安裝路徑后,點擊安裝圖標,進入實際安裝步驟,以后的工作將由系統自動完成。
 
4.使用說明
VSS使用過程中要遵循的是lock-modify-unlock流程而不是 copy-modify-merge流程(比如CVS),即開發人員首先將自己要修改 源代碼和文檔從VSS 服務器備份文件上checkout到本地同時鎖定服務器上的源代碼和文檔(multi - checkout情況除外),修改完成后checkin到服務器上同時解除服務器上文件的鎖定。服務器集中控制所有的源程序和文檔。
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小時的時間格式。
 
5.配置與管理
在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/MicrosoftVisual 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管理員有責任集中進行處理。
 
6.使用方法
安裝完成之后,開始登陸,然后進行設置項目路徑
1>取得最新版本,這個命令通常從項目的右鍵菜單名為“Get Last Version”。“Recursive”遞歸,若選中可以得到整個項目樹,否則只得到項目下的文件而不包含子項目。“Make Writeable”,默認取得的文件是只讀的(Check Out 才是獲得可編輯的版本的合理方式),若選中則不設置只讀屬性。
2> 簽出項目或者文件Check Out過程應該首先簽出才有權限改文件,簽入之后修改才會被其他人認可。如果文件已經被簽出,就應該等待或者是跟簽出者協商,絕不應該在沒有簽出的情況下擅自改動本地文件。任何人都應該服從這一點,否則項目版本則處於混亂當中。。
3>簽入項目或者文件Check in 有遞歸選項,可以連子目錄一起簽入。“Keep Checkede Out”,保持簽入狀態,在頻繁的修改代碼時經常會這么做,保持一個中間版本然后就繼續修改。
4>撤銷簽出 Undo Check Out, 如果后悔了,不想修改文件,可以撤銷簽出。有遞歸選項, 還要選擇本地版本的處理方式, 可以用VSS里面的版本覆蓋,  可以留着不管他,還可以刪除,要仔細斟酌。
5>顯示歷史記錄 Show History,查看項目的所有歷史,包含增加文件,刪除文件,簽入文件(文件有改動)。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM