1.CVS基本概念
CVS開源配置管理工具是很早的時候在Unix下發(fā)展起來的,它使用的術(shù)語比較特殊,需要先熟悉和理解,這是使用CVS的第一步。
Repository:中文名稱:倉庫。它是 CVS服務(wù)器(可能在遠(yuǎn)程,也可能在本地)的根目錄,我們所有的工作都保存在這個倉庫中,包括源代碼和這些代碼的全部歷史。你可以把Repository想像成一個倉庫,倉庫中有許多“木桶”,每個“木桶”是我們的一個讓CVS管理起來的工程。對于CVS來說,這些“木桶”之間是沒有什么關(guān)聯(lián)的,刪除一個“木桶”不會影響別的“木桶”。我們所想像的木桶,在CVS術(shù)語中,又叫模塊(Module)。
Module:中文名稱:模塊。是上面我們所想像的倉庫中的“木桶”,里面放的是一個項目的所有文件(包括源代碼,文檔文件,資源文件等等)。在物理上,Module是CVS服務(wù)器根目錄下的第一級子目錄。
Import:中文名稱:導(dǎo)入。我們本地有一個軟件項目,里面有許多各種類型的文件,都需要用CVS進(jìn)行版本管理,那么第一步是把這個軟件項目的整個目錄結(jié)構(gòu)都Import到CVS的倉庫中去。經(jīng)過這種導(dǎo)入,CVS將為你的項目創(chuàng)建一個新的“木桶”----Module,即模塊。
Checkout:中文名稱:導(dǎo)出。指將倉庫中的一個“木桶”(Module, 模塊)中的東西導(dǎo)出到本地的工作目錄下,然后我們可以在WinCvs的管理下,進(jìn)行工作,修改其中的內(nèi)容。
Commit:中文名稱:提交修改。我們在本地的工作目錄下,對工程中的文件進(jìn)行修改,這些修改,需要提交給CVS的倉庫,這個過程,叫Commit。你可以Commit一個文件,也可以Commit整個目錄。
Update:中文名稱:同步。它與Commit相對應(yīng),是從倉庫中的“木桶”(模塊)中下載你同事修改過的文件(別忘記你的項目有許多人共同參與),如果這個文件在你本地也有,會更新本地的拷貝,如果你本地沒有,會把新文件下載到你的本地。
Revision:中文名稱:文件版本。這是CVS中一個需要特別注意的概念,它指的是單個文件的版本,而不是整個項目的版本;旧希瑔蝹文件每次的修改,經(jīng)過Commit之后,它的Revision都要改變一次,比如從1.1到1.2到1.3等等。特別要注意,單個文件的版本(Revision)與整個工程產(chǎn)品的版本(Version,或者Release)可以沒有任何關(guān)系。例如,整個產(chǎn)品現(xiàn)在發(fā)行1.0版本(Version 1.0)了,但是產(chǎn)品的源代碼文件中,有的文件版本(Revision)可能是1.9, 有的是2.1,等等。這很容易理解,因為為了發(fā)行產(chǎn)品V1.0,我們需要對源代碼進(jìn)行多次修改編譯。
Release:中文名稱:發(fā)行版本。整個產(chǎn)品的版本,例如VC5.0, VC6.0等。
Tag:中文名稱:標(biāo)簽。在一個開發(fā)的特定期,對一個文件或者多個文件給的符號名,一般是有意義的字符串,如“stable”,“release_1_0”等。比如,我們對某個文件的1.5版本加上標(biāo)簽:“memory_bug_fixed”,借助這個有意義的標(biāo)簽,我們可以理解1.5版本解決了內(nèi)存Bug,所以說Tag賦予了版本一些文字含義。
2. WinCvs的兩種工作模式、工作流程與目錄
理解上述基本概念之后,我們需要對WinCvs的工作方式有一個基本了解。
CVS工作于服務(wù)器/客戶端模式(Client/Server模式)。WinCvs是CVS在Windows下的圖形客戶端。它有兩個基本工作模式:
2.1 WinCvs作為遠(yuǎn)程CVS的客戶端
WinCvs的第一種工作模式是作為遠(yuǎn)程CVS服務(wù)器在本地的客戶端使用。CVS由于是在Unix下發(fā)展起來的,在使用的時候,有很多命令行,命令行中又帶很多參數(shù),習(xí)慣于Windows的讀者很難記憶這些命令行和參數(shù)。WinCvs提供了用圖形界面使用遠(yuǎn)程CVS服務(wù)的直觀方法。
在這種工作模式下,第一次使用WinCvs的基本流程如下:
1) 您首先要讓CVS管理員給您分配一個用戶名和密碼,先使用WinCvs登錄(Login)到CVS服務(wù)器。
2) 把本地需要CVS管理的原始目錄導(dǎo)入(Import)到CVS服務(wù)器上去,使之成為CVS服務(wù)器上倉庫(Repository)的一個Module。
3) 在本地硬盤上創(chuàng)建一個工作目錄。
4) 從CVS服務(wù)器的倉庫(Repository)導(dǎo)出(Checkout)一個Module到本地硬盤的工作目錄
5) 從CVS服務(wù)器同步(Update)你同事的修改到你本地工作目錄。在工作目錄上進(jìn)行工作,在這個過程中,把文件的中間版本(Revision)提交(Commit)給CVS服務(wù)器。
當(dāng)您已經(jīng)進(jìn)行過上述流程,以后再使用時,簡化成只需要步驟1)和步驟5)可以了。