9、從cvs本地服務器上checkout相應的模塊:
a、如果是在CVS服務器所在計算機上,可以直接采用如下命令:
#cvs checkout stw
這樣將把stw項目模塊checkout到當前目錄下。
b、如果是在遠程運行Linux或其它Unix系統上,在第7中登錄之后也可以用上邊的命
令把相應的項目模塊checkout到當前目錄下。
另外,如果是在windows端進行checkout,可以采用WinCVS,那么還要對WinCVS進行其它的一些配置,下一部分將具體介紹它的配置方法。
第二部分 WinCVS的配置與使用方法
1、 WinCVS簡介:
WinCVS是CVS的一個客戶端軟件,它運行在Windows上,用來在Windows上登錄CVS服務器,然后進行一些CVS相關的操作與管理。由于當前很多的企業內部都采用Linux/Unix做服務器,而用Windows做客戶端,所以,WinCVS與CVS服務器配合使用將組成強有力的版本控制與管理的系統之一。
2、 WinCVS的下載與安裝;
新的WinCVS可以從http://sourceforge.net/project/showfiles.php?group_id=10072地址下載到,也可以在http://sourceforge.net/project上下載到新的或其它版本的WinCVS。
下載到相應的版本后根據向導進行安裝,已經要使用CVS的用戶,安裝這個WinCVS應該沒什么問題吧!
3、 配置WinCVS:
a、 一般選項的設置,選擇Admin->Preferences…,出現如下界面:
第一、 Authentication:用來配置cvs服務器的認證方式,可以從下拉框中選擇其它的認證方式,不過一般只要選擇默認的pserver方式可以,要注意的是必須與cvs服務器配置時所指定的認證方式一致;
第二、 Path:用來配置cvs在服務器上的主目錄路徑,也是服務器上用進行cvs初始化的目錄,如:/home/cvsroot;
第三、 Host Address:用來配置cvs服務器所在服務器的地址,可以是IP地址,也可以是DNS名,如:10.104.1.204;
第四、 User name:用來配置要使用些WinCVS來登錄CVS服務器的用戶名,如:cvsyxwu,用戶的登錄必須由管理員把其添加cvs用戶組中;
第五、 CVSROOT:此項一般都不需要用戶進行修改,用戶在輸入上邊的幾個選項時,系統將自動根據用戶的輸入生成此項的相應內容。
b、 全局選項的設置,在上一個界面上選擇“Globals”:
此項的配置主要是要注意這幾選項:
第一,Checkout read-only不要選上,否則,checkout出來的源代碼將不允許用戶進行
修改,并且此選項默認是選中的;
第二,Prune (remove) empty directories也不要選上,否則,會自動刪除空目錄;
第三,對一般配置沒有特殊要求的,把Dirty files support、Supply control when adding
與TCP/IP compression選項選中;
4、 登錄服務器:
選擇Admin->login,將出現如下對話框要求用戶輸入登錄口令
輸入口令后,選擇“OK”按鈕,如果CVS服務器與WinCVS的配置都沒出錯的話,將在CVS的狀態欄中提示:
cvs -z9 -d :pserver:cvsyxwu@10.104.1.204:/home/cvsroot login
Logging in to :pserver:cvsyxwu@10.104.1.204:2401/home/cvsroot
***** CVS exited normally with code 0 *****
code 0表示正確的登錄;而如果出錯的話,將是code 1,那么要根據錯誤的提示進行相應的修改。
5、 從CVS服務器上check out相應的模塊:
第一, 在workspace中的Modules選中要存放checkout模塊的目錄;
第二, 選擇Create->Checkout Modeles,將出現如下對話框:
其中,Module name and path on the server是要存放checkout 內容的目錄,由用戶輸入;而Local folder to checkout to是第一中用戶所選擇的目錄。
6、 修改之后把文件提交到CVS服務器
a)、只有一個用戶對文件進行修改的情況
用自己喜歡的編輯器對checkout出來的文件進行修改,修改之后的文件在沒有提交之前會是紅色的,如下圖example.h文件:
選中紅色的文件example.h后右擊選擇“Commit Selection”選項,如果沒有其它用戶也對其進行修改并已經提交到CVS服務器上,一切正常的話將把example.h文件提交到CVS服務器并把圖標恢復成原來的顏色。
b)、兩個或兩個以上的用戶對同一文件的不同部分進行修改的情況
這種情況是如用戶A與用戶B都checkout了文件example.h,內容如下:
int callby (int count)
{
printf("ExcelStor!
");
}
void main(int argv,char *argc)
{
//added by my cvs
printf("I am Cather
");
}
int mainexample()
{
printf("OK
");
}
然后用戶A修改成如下,并提交到CVS服務器(一般將正常提交):
int callby (int count)
{//add
printf("ExcelStor!
");
}
void main(int argv,char *argc)
{
//added by my cvs
printf("I am Cather
");
}
int mainexample()
{//add
printf("OK
");
}
接著用戶B修改成如下:
int callby (int count)
{//add
printf("ExcelStor!
");
}
void main(int argv,char *argc)
{
//modified
printf("I am Cather
");
}
int mainexample()
{//add
printf("OK
");
}