亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源配置管理工具 > cvs
windows環境CVS client使用入門
作者:網絡轉載 發布時間:[ 2013/3/13 16:04:41 ] 推薦標簽:

CVS (Cuncurrent Versions System)是基于TCP/IP協議的版本控制工具,也是Open source界重要的開發工具之一。
它原來主要工作在UNIX平臺下,現在在windows平臺上也出現了很多GUI工具。
關于其由來,發展,請參閱http://www.redsaga.com/CVS_newbie_win32/www.cvshome.org。
CVS和其他大部分版本控制軟件一樣,是Client/Server結構的。你必須在本地為CVS repository準備好一個目錄,來和服務器同步源代碼。
和在Windows 開發平臺中擁有很大用戶群的Visual Source Safe(VSS)相比,CVS主要由兩個不同之處。
一是VSS依靠服務器上的一個共享目錄提供服務,每一個client必須能夠訪問這個共享目錄。這也決定了source safe在TCP/IP環境下使用很困難。對于分布跨越數個城市甚至的工作小組來說,只有通過VPN才能夠安全的訪問source safe數據庫。(SourceGear公司(www.sourcegear.com)發售名為SourceOffSite的商業軟件包,US$239 per user,也可以為遠程用戶提供通過TCP/IP訪問source safe數據的能力。) 而CVS依靠TCP/IP連接提供服務,所以它天生是為了在internet上協同工作而設計的。雖然基本的pserver連接安全性不是很高,但是通過使用SSH,可以獲得很高的安全性。

二是CVS反對對文件上鎖的機制。VSS以及其他很多傳統版本控制工具要求一個文件只能有一個使用者,它必須先checkout聲明編輯文件的獨享權力,直到checkin為止。但是對于地理上不限制使用者位置的CVS來說,等待一個用戶checkin是一件痛苦的事情,而互相溝通比一個緊密工作的團體更困難。CVS采取多個用戶可以同時對一個文件進行編輯,然后commit的方式解決這個問題。假設由于溝通不足出現沖突,使用者必須手工解決沖突之后再進行commit。在這種情況下,沖突的開發者必須努力進行足夠的溝通以避免再次沖突。
CVS服務器可以被配置為把commit記錄自動張貼到新聞組或者開發者的email信箱中去。注意這些輔助記錄將有助于開發者之間的合作。
2, repository,module
CVS服務器上,一個源代碼倉庫被稱為一個repository,一個server上通常可以運行多個repository,每個repository都是完全獨立的,可以有不同的用戶列表和訪問規則。在一個repository之下,文件按照module組織,每一個module相當于一個工程,大致上相當于Source safe里面的project。
VSS在你連接上服務器之后,會列出所有的project。但并不是所有的CVS server都會提供module的列表。事實上,哪些module被公開是由管理員控制的。如果你知道一個被隱藏的module的名字,你仍然可以正常的訪問這個module。
3,CVSROOT
CVS依靠運行在服務器上的一個服務程序提供TCP/IP的連接。為了訪問一個CVS數據庫,你必須知道你所使用的協議,服務器的地址,服務器提供的Repository的名稱以及你的用戶名和密碼。
有數種協議可供選擇。Unix/Linux機器上的CVS通常使用pserver協議,這是一種不非常安全的協議,但是如果你有額外的安全要求,可以通過SSH進行增強。除此之外,NT機器還支持ntserver協議,它通過主機的NT用戶表進行訪問控制(但是這是在internet上不可用的方法)。kserver和gserver協議用的比較少,他們依據Kerboses提供額外的安全保護。
你有必要知道CVSROOT這個參數。CVSROOT是一個用":"開始及分隔各個部分的字符串,它包含了協議、用戶名、服務器地址和repository名稱。對于用戶來說,CVSROOT像URL一樣,是訪問一個server的途徑。
一個典型的CVSROOT=:perser:cao@61.155.107.187:/cvs。這里,pserver是協議名稱,cao是用戶id,61.155.107.187是主機ip,/cvs是repository的名字。NT主機的repository一般會采取d:/CVSROOT之類的格式。
另一個例子是:pserver:anonymous@jivesoftware.com:/cvs,這是jivesoftware公司提供的開放源代碼java技術論壇的CVSROOT。
在windows下使用命令行方式,這個參數可以通過一個環境變量使用。在windows 2000/XP系統中,你可以通過在'My computer'的properties中選擇advanced,然后選擇'Enviroment Variables'來輸入這個環境變量。
4,checkout,update
為了得到module下面的源代碼,你只需要使用checkout指令。和Visual source safe不一樣,checkout只是取得文件,而非鎖文件。
如果你已經有了本地文件,為了和server保持同步,你需要進行update操作。update會自動把server上的新內容取到本機來,如果你本地文件進行過了改動,它會幫您做合并工作。
checkout 和 update既可以針對一個特定的文件,也可以針對一個目錄或者整個module。
5, commit
如果你對本地代碼做了任何修改,或者增加一個文件,刪除一個文件,每當你需要把你的改變提交到server上的時候,你需要做commit動作。假設兩個人都在本地修改了同一個文件,那么他們像在進行一個競賽,如果你快,那么你贏了。后commit的人將被server拒絕,不得不合并你的修改再次提交。
commit既可以針對一個特定的文件,也可以針對一個目錄或者整個module。
6, revision
Revision是指每一個文件的版本信息。當你第一次增加一個文件到repository的時候,它會有一個初始revision是1.1,以后每次提交,會增加到1.2,1.3...
在一個branch中的文件,有相對于這個branch的版本號。如果你對文件作了tag,那么你會看到revision變成1.1.1.1的形式。具體的含義我們在branch和tag的時候描述。
7,branch
Branch是一棵正常生長的代碼樹中的枝杈。開始的時候,任何一個module都有一個主枝被稱為'HEAD'。
一個branch終要么被合并到主干中去,要么被結束。branch通常用來debug,如果這個bug被fix了,修改bug的代碼應該被合并到主枝上去。一個branch也可能經歷多次與主枝的合并。
8, tag
Tag用來進行標示必要的信息。當您進行一次公開發布之前,您有必要對主枝標示"release 1.0"。這樣您以后可以隨時回到這個版本。
//to do: 請完善這里的描述

CVS命令行
在得到CVSROOT和你的口令之后,你可以試著登陸了。
首先,由于其他所有的GUI工具都是基于CVS基本協議的,而且他們可能會提供CVS的命令行或者等價形式作為顯示的一部分,所以你應該對命令行操作有所了解。如果你還沒有一個cvs。exe的命令行程序,從http://www.redsaga.com/CVS_newbie_win32/www.cvsnt.org你可以得到一個cvsnt的下載連接,其中包含了一個命令行的cvs.exe程序。我們先從它開始(為了作為一個client使用,你不需要安裝cvsnt的server組件)。CVSNT的cvs.exe是專門為windows編寫的,你需要把cvs.exe放在你的path里面。
1.進入命令行方式。
和VSS一樣,你也需要在本地有一個工作目錄對應于一個repository。假設這個目錄是'd:workssandbox'。請切換到這個目錄。
輸入"cvs"。你會看到:

這些提示信息告訴您關于cvs的基本語法。cvs后面跟著的是全局參數,然后是命令,后是命令的參數。
2.login
正確的login不會有任何輸出,否則會告訴你錯誤原因。
cvs

3.下面我們看看這個CVS server中有哪些module。

4.假設現在我們工作的項目是projectX,下面我們需要得到它下面的全部文件。

上一頁123下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 色偷偷.com| 国产成人啪精品 | 欧美色p | 久久99精品久久久久久园产越南 | 波多野结衣一级视频 | 一本高清 | 日韩综合色 | 天海翼一区二区三区四区 | 亚洲一区欧美日韩 | 欧美做a一级视频免费观看 欧美最猛性xxxxx短视频 | 国产91久久最新观看地址 | 激情六月丁香 | 亚洲一区免费观看 | 午夜大片免费男女爽爽影院久久 | 欧美00xx | 97国产精品国产品国语字幕 | 污污视频网站免费 | 一级免费大片 | 日韩成人免费视频 | 亚洲免费高清 | 成年人视频免费 | 久久精品视频8 | 免费看一毛一级毛片视频 | 美女福利视频导航 | 九九九九在线精品免费视频 | 色色免费| 欧美在线观看一区 | 免费视频毛片 | 亚洲不卡视频在线观看 | 国产a久久精品一区二区三区 | 免费看黄无遮挡滚床单视频 | 国产一级毛片免 | 日本成人久久 | 操皮视频 | 在线亚洲精品视频 | 亚洲人成毛片线播放 | 日韩欧美在线看 | 色视频在线看 | 在线精品日韩一区二区三区 | 国产亚洲欧美日本一二三本道 | 一区二区三区在线观看视频 |