lyjinger軟體使用之:cvs伺服器配置和使用
cvs服務配置:
1、在/etc/xinetd.d目錄下建立檔案cvspserver,內容如下:
1 # default: on
2 # description: the cvs server
3 service cvspserver
4 2、確認/etc/services檔案中有以下兩行,沒有則手動新增:
cvspserver 2401/tcp # cvs client/server operations
cvspserver 2401/udp # cvs client/server operations
3、重啟xinetd服務
server xinetd restart
4、確認cvs服務已開啟監聽
netstat -l
如果輸出結果有以下這行則cvs啟動成功
tcp 0 0 *:cvspserver *:* listen
cvs使用者管理:
1、新增使用者組cvs,使用者cvsroot、cvspub
groupadd cvs
useradd cvsroot -g cvs
useradd cvspub -g cvs
2、將其他使用者加入cvs使用者組,假設當前系統中已存在乙個使用者ly
gpasswd -a ly cvs
cvs資料倉儲:
1、建立資料倉儲,假設將資料倉儲目錄設為/cvsroot
sumkdir /cvsroot
chown cvsroot cvsroot
chgrp cvs cvsroot
chmod 770 /cvsroot
chmod g+s /cvsroot
2、初始化資料倉儲
cvs -d /cvsroot init
cvs訪問方式:
一、:ext:方式:假設使用者ly訪問本地cvs
1、修改~/.bash_profile,增加兩行:
18 export cvs_rsh=/usr/bin/ssh
19 export cvsroot=:ext:ly@localhost:/cvsroot
2、使配置生效
source .bash_profile
3、測試訪問
cvs checkout cvsroot
根據提示輸入密碼,成功會在本地生成cvsroot目錄
二、:pserver:方式:假設使用者cvspub訪問192.168.1.8cvs
1、修改~/.bash_profile,增加一行:
20 export cvsroot=:pserver:[email protected]:/cvsroot
2、使配置生效
source .bash_profile
3、測試訪問
cvs login
根據提示輸入密碼
cvs checkout cvsroot
成功會在本地生成cvsroot目錄
cvs日常使用:
1、建立新模組,假設將/home/ly/test/hello工程(包括main.c、makefile)匯入cvs
cd /home/ly/test/cvs_test
cvs import -m "import hello project." cvs_test lyjinger start
2、獲取新模組
我們可以先刪除原先的hello工程目錄
cd ..
rm -rf hello
cvs checkout cvs_test
3、獲取最新修改,假設main.c被其他人修改後提交
cvs update main.c
4、提交修改,提交自己修改的main.c
cvs commit -m "your modified message." main.c
5、比較本地拷貝與庫中檔案,比較main.c
cvs diff main.c
比較本地拷貝與庫中指定修訂版,假設比較main.c與庫中main.c的1.1修訂版
cvs diff -r 1.1 main.c
比較庫中不同的修訂版,假設比較main.c庫中的1.1與1.3修訂版
cvs diff -r 1.1 -r 1.3 main.c
6、顯示指定檔案所有修訂版的日誌資訊,顯示main.c日誌
cvs log main.c
7、顯示指定檔案狀態:本地修改還是庫中更新,顯示main.c狀態
cvs status main.c
8、解決衝突
當多個開發人員同時修改乙個檔案時引起衝突,發生衝突後你需要開啟有問題的檔案,搜尋以《開始的行
<<<<<<<
你的修改
*****==
庫中合併的**
>>>>>>>修訂版
判斷**,刪除衝突標記,提交檔案,解決衝突
9、標記標籤,假設將main.c makefile test標記為發行版1.0
cvs tag release1-0 main.c makefile test
以後你可以使用
cvs checkout -r release1-0 cvs_test
檢出該發行版
檢視檔案標籤
cvs status -v main.c
10、向模組庫中新增新檔案,假設新增func.c到工程hello中
cvs add func.c
cvs commit
向模組庫中新增新目錄,假設新增modules目錄到工程hello中
cd modules
cvs import -m "add modules to hello project" hello/modules lyjinger start
11、從模組庫中刪除檔案,假設從工程hello中刪除func.c
cvs remove func.c
cvs commit
從模組庫中刪除目錄,假設從工程hello中刪除目錄modules
首先需要刪除庫中modules目錄下所有檔案,然後
cvs update hello
cvs預設刪除空目錄
12、模組分支
前面我們已經將hello工程發行為版本1.0,現在開始版本2.0的工作
公升級版本號
cvs commit -m "update project hello to ver2.0." -r 2.0
此時客戶反饋1.0版本有乙個bug需要立即修改,我們只好停下2.0的工作,對1.0進行修正
首先刪除本地拷貝
cvs release -d hello
在庫中建立版本1.0的分支並檢出到本地
cvs rtag -b -r release1-0 release1-0-patch hello
cvs checkout -r release1-0-patch hello
現在開始在版本1.0分支上工作,修正bug確認無誤後,將分支合併
首先刪除本地分支的拷貝
cvs release -d hello
將版本1.0的分支合併到版本1.0庫中
cvs checkout -j relase1-0-patch hello
解決衝突後將合併後的檔案提交到庫
cvs commit
配置CVS伺服器
首先安裝了 rhel 4 預設情況下,如果你選中了 rhel 的開發包,cvs就會預設安裝了。redhat 的cvs 是把客戶端和服務端放在了乙個 rpm包中了。害我找了半天的 cvsd l如果是編譯安裝,需要你在 etc service 檔案中新增下面的兩行 cvspserver 2401 tcp...
CVS伺服器的配置
cvs想必做軟體開發的都聽說過,那麼怎麼才能讓開發人員享受這一便利工具呢?當然是裝個cvs伺服器了。windows下有個cvsnt,沒用過,據說問題比較多。linux下當然簡單了,debian下更是如此。修改配置檔案 檢查一下 etc cvsd cvsd.conf檔案,確認最後幾行類似如下的形式 r...
AIX上配置cvs伺服器
關於如何配置cvs伺服器,網上的文章一般都是針對linux。linux和unix很類似,所以在unix上面配置cvs伺服器的方法和在linux差不多,但是也有一些特殊的地方需要注意。下面我以aix5.2為例說明一下特殊的地方。配置服務 需要配置的檔案是 etc inetd.conf,新增 cvsps...