国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Linux > 正文

Linux下常用cvs命令整理

2020-06-13 12:33:54
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
Linux下常用cvs命令整理,需要的朋友可以參考下。
 
 
1.登錄: 
$export CVSROOT=:pserver:username@the_server_name:/home/cvsroot 

Note:pserver是訪問(wèn)方式,如果服務(wù)器設(shè)置的是口令認(rèn)證,則是 pserver。 
username是 CVS服務(wù)器的用戶名,可以根據(jù)你的設(shè)置修改; 
the_server_name是CVS服務(wù)器的名稱或者IP地址; 
/home/cvsroot是你的CVS服務(wù)器的CVSROOT目錄,根據(jù)你的CVS服務(wù)器設(shè)置做修改或者詢問(wèn)管理員. 
登陸CVS服務(wù)器: 
$cvs login 

這時(shí)候cvs會(huì)問(wèn)你口令,請(qǐng)把你在CVS服務(wù)器上的口令敲進(jìn)去: 
Passwd:xxxxxxxx 

2. 提交項(xiàng)目--import 
cvs import [-options] repository vendortag releasetag... 
Note: 該命令將當(dāng)前目錄下的所有文件(包括子目錄)導(dǎo)入源代碼儲(chǔ)存庫(kù)。 
repository :項(xiàng)目名稱,在CVS服務(wù)器上會(huì)創(chuàng)建以這個(gè)名字命名的倉(cāng)庫(kù)。 
vendortag : 項(xiàng)目分支的總標(biāo)記。(不常用) 
releasetag :標(biāo)識(shí)文件的輸入層次的標(biāo)記。 (一般用start) 
使用import提交項(xiàng)目的時(shí)候,CVS會(huì)要求對(duì)項(xiàng)目進(jìn)行說(shuō)明。在默認(rèn)狀態(tài)下,CVS會(huì)彈出文本編輯器。用戶也可以用-m “log_message”來(lái)輸入說(shuō)明信息。 

例如 
$cvs import -m "upload the first time as new module" judecvs v_0_0_1 start 

提示:import 一般在第一次導(dǎo)入module時(shí)使用。后期修改文件后可直接使用commit命令提交修改的文件。 

3. 從CVS導(dǎo)出項(xiàng)目--checkout 
cvs checkout [options] modules... 
此命令將源代碼儲(chǔ)存庫(kù)中已有的項(xiàng)目導(dǎo)出到當(dāng)前目錄。 
modules :項(xiàng)目名稱 
例如,從倉(cāng)庫(kù)中檢索出judecvs項(xiàng)目的源文件. 
$cvs checkout judecvs 


4.CVS 主要命令---update 更新當(dāng)前工作目錄中的文件 
cvs update [-options] [files...] 
此命令比較指定CVS武林網(wǎng)中的文件和當(dāng)前目錄下的文件,如果CVS武林網(wǎng)中有更高版本的源文件,則更新當(dāng)前目錄下的文件。此命令只有在checkout命令使用過(guò)后才能使用。 
在執(zhí)行update命令時(shí),CVS并不是簡(jiǎn)單的將新版本覆蓋當(dāng)前文件,而是試圖將新版本所做的修改添加到當(dāng)前文件中去。如果發(fā)生沖突,CVS會(huì)以字符串 “<<<<<<”和“>>>>>>”來(lái)表示沖突發(fā)生。這時(shí)候你可以修改文件,重新提交。 
提示:如果你已經(jīng)做過(guò)一次checkout了,那么不需要重新checkout,只需要進(jìn)入cvstest項(xiàng)目的目錄,更新一把就行了: 
例如: 
$cd judecvs 
$cvs update 

5.CVS 主要命令---status 如果你不想直接更新,只是想看看有沒(méi)有更新的東西,那么: 
$cvs status 
會(huì)給每個(gè)文件有一份狀態(tài)報(bào)告,類似這樣: 
================================================== 
File: client.c Status: Up-to-date 
Working revision: 1.1.1.1 'Some Date' 
Repository revision: 1.2 /home2/cvsroot/judecvs/client.c,v 

這里最重要的就是 Status 欄,這里總共可能有四種狀態(tài): 
Up-to-date:表明你要到的文件是最新的. 
Locally Modified:表明你曾經(jīng)修改過(guò)該文件,但還沒(méi)有提交,你的版本比倉(cāng)庫(kù)里的新. 
Needing Patch:表明有人已經(jīng)修改過(guò)該文件并且已經(jīng)提交了!你的版本比倉(cāng)庫(kù)里的舊. 
Needs Merge:表明你曾經(jīng)修改國(guó)該文件,但是別人也修改了這個(gè)文件,而且還提交給倉(cāng)庫(kù)了! 

6.CVS 主要命令---commit 保存修改到CVS中 
cvs commit [-lnR] [-m 'log_message' | -f file] [-r revision] [files...] 
此命令將當(dāng)前目錄下的源代碼與CVS中最新版本比較,并進(jìn)行更新。 
[-m ‘log_message‘ ] :輸入修改說(shuō)明。 
[-r revision] :指定版本。 
[files...] :指定修改文件。 

$cvs commit -m "add XXX function" client.c 

系統(tǒng)會(huì)提示 
CVS: ---------------------------------------------------------------------- 
CVS: Enter Log. Lines beginning with `CVS:' are removed automatically 
CVS: 
CVS: Committing in . 
CVS: 
CVS: Modified Files: 
CVS: client.c 
CVS: ---------------------------------------------------------------------- 


退出后,系統(tǒng)詢問(wèn)是否continue,輸入c,則完成checkin 
Log message unchanged or not specified 
a)bort, c)ontinue, e)dit, !)reuse this message unchanged for remaining dirs 
Action: (continue) c 
Checking in client.c; 
/home2/cvsroot/judecvs/client.c,v <-- client.c 
new revision: 1.2; previous revision: 1.1 
done 


如果CVS上文件已經(jīng)有其他人更新,也就是我當(dāng)前工作的不是最新版本,系統(tǒng)提示commit失敗,這時(shí)候需要先update,然后把整合文件再commit. 
cvs server: Up-to-date check failed for `client.c' 
cvs [server aborted]: correct above errors first! 
cvs commit: saving log message in /tmp/cvsCEjA9N 


提示:修改文件之前先update或者先查看文件狀態(tài),確認(rèn)當(dāng)前工作版本是最新版本。 

7.添加文件到項(xiàng)目中---add 
cvs add [-k kflag] [-m 'message'] files... 
此命令并不真正添加文件,只是將文件注冊(cè)到項(xiàng)目中,要真正添加文件,還要使用commit命令。 
例如: 
$cvs add -m "test add" testadd.c 

提示: 
cvs server: scheduling file `testadd.c' for addition on branch `v_0_0_2' 
cvs server: use 'cvs commit' to add this file permanently 


$cvs commit 

同commit過(guò)程一樣,CVS將testadd.c添加到項(xiàng)目中 

8.CVS 主要命令---remove 從項(xiàng)目中刪除文件 
cvs remove [-k kflag] [-m 'message'] files... 
和add命令一樣,此命令并不真正刪除文件,只是將文件從項(xiàng)目中取消,要真正刪除文件,還要使用commit命令。 
e.g. 
$rm testadd.c 
$cvs rm testadd.c 
系統(tǒng)提示 
cvs server: scheduling `testadd.c' for removal 
cvs server: use 'cvs commit' to remove this file permanently 

$cvs commit testadd.c 

此時(shí),CVS才將testadd.c從項(xiàng)目的最新版本中刪除,但是如果它有以前的版本,以前版本依然存在。 

一些常用命令的簡(jiǎn)化形式: 
cvs co <model> 
cvs up filename 提交修改 
cvs ci filename 確認(rèn)修改 
cvs log filename 察看修改日志 
cvs st filename 察看文件狀態(tài) 
cvs rm filename 將某個(gè)源文件物理刪除 

linux上使用cvs命令 

1)登陸CVS服務(wù)器: 

  cvs -d :pserver:username@host:/$CVSROOT login 

然后系統(tǒng)會(huì)提示你輸入密碼。或直接使用: 

  cvs -d :pserver:user:pwd@host:/CVS login 

2) checkout: 

  cvs -d :pserver:host:/CVSROOT checkout projectName 

3) 如果想省略上面的-d以及服務(wù)目錄,執(zhí)行: 

  export CVSROOT=:pserver:user@host:/cvsroot 

4) update: 

  cvs update 

  cvs update -C (override and update) 

5) cvs status: 顯示當(dāng)前文件的更新?tīng)顟B(tài).

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 张家口市| 海兴县| 耒阳市| 临沂市| 惠来县| 思南县| 嘉禾县| 怀安县| 阿荣旗| 汝阳县| 旺苍县| 阳西县| 永靖县| 新和县| 维西| 新疆| 江达县| 彰化市| 桐梓县| 江都市| 娱乐| 响水县| 柳州市| 阿拉善盟| 大竹县| 民勤县| 淳安县| 建水县| 隆林| 敦煌市| 揭阳市| 安阳市| 鄂托克旗| 车险| 延寿县| 南川市| 邮箱| 布尔津县| 多伦县| 霍林郭勒市| 阿克|