<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 45, 文章 - 6, 評(píng)論 - 4, 引用 - 0
    數(shù)據(jù)加載中……

    SVN與CVS兩者間的比較



    CVS SVN
    關(guān)于版本號(hào) 基于文件的自增序列號(hào)。 基于全局的自增序列號(hào),而不僅僅針對(duì)文件,還包括目錄等。
    存儲(chǔ)類型格式 CVS是個(gè)基于RCS文件的版本控制系統(tǒng)。每個(gè)CVS文件都不過(guò)是普通的文件,加上一些額外信息。這些文件會(huì)簡(jiǎn)單的重復(fù)本地文件的樹(shù)結(jié)構(gòu)。因此,不必?fù)?dān)心有什么數(shù)據(jù)損失,如果必要的話你可以手工修改RCS文件。 SVN是基于關(guān)系數(shù)據(jù)庫(kù)的(BerkleyDB)或一系列二進(jìn)制文件的(FS_FS)。一方面這解決了許多問(wèn)題 (例如,并行讀寫共享文件)以及添加了許多新功能(例如運(yùn)行時(shí)的事務(wù)特性。)。然而另一方面,數(shù)據(jù)存儲(chǔ)由此變得不透明,或是說(shuō)并不那么用戶友好了。那就是 為什么工具軟件,對(duì)倉(cāng)庫(kù) (數(shù)據(jù)庫(kù))變得那么重要了。
    訪問(wèn)速度 比較慢;因?yàn)樗趩蜗颍ǚ?wù)端-->客戶端)差異化文件傳輸 整體而言,由于架構(gòu)實(shí)現(xiàn)的不同, SVN的確比CVS快很多;因?yàn)椴捎秒p向差異化文件傳輸。
    在網(wǎng)絡(luò)上它只傳輸很少的信息并支持更多的離線模式的功能。但這也是有代價(jià)的。速度的代價(jià)就是巨大的存儲(chǔ)(完全備份所有的工作文件)。
    元數(shù)據(jù) 只允許存儲(chǔ)文件 允許一個(gè)文件有任意都的可命名屬性。功能十分完全,但不知到底有什么用
    文件類型 最初是為文本文件存儲(chǔ)而設(shè)計(jì)的。因此其他文件類型(二進(jìn)制,統(tǒng)一碼)文件的支持幾乎沒(méi)有如需要的話則要有其他信息,并且客戶端服務(wù)器端都要調(diào)整。 SVN會(huì)關(guān)心所有的文件類型,不需要你來(lái)手工操作;因?yàn)樗拇鎯?chǔ)是基于二進(jìn)制的
    滾回 CVS允許任意的滾回,在任意一個(gè)已遞交的版本上,盡管著要華些時(shí)間(所有的文件都要分別處理)。 SVN不允許遞交后滾回。我們建議把倉(cāng)庫(kù)里好的狀態(tài)版本加到末尾,覆蓋掉損壞的版本。而損壞的版本無(wú)論如何也是會(huì)存在數(shù)據(jù)庫(kù)里的。
    事務(wù) CVS中的 “零或一”事務(wù)原則根本沒(méi)有實(shí)現(xiàn)。如果檢入幾個(gè)文件的話(加到服務(wù)器上),很有可能部分文件完成了,而另幾個(gè)沒(méi)有。最為一個(gè)潛規(guī)則,手工糾正這些并且對(duì)余 下的文件 (而不是所有文件)一一重復(fù)檢入。這樣這些文件將在兩階段中被檢入。但至今為止,因?yàn)檫@個(gè)功能缺少而導(dǎo)致的數(shù)據(jù)倉(cāng)庫(kù)損壞的案例還沒(méi)有出現(xiàn)過(guò)。 支持“零或一”事務(wù)原則,這是SVN的一大優(yōu)勢(shì)
    架構(gòu)、代碼、可擴(kuò)展性 CVS是個(gè)古老的系統(tǒng)。起初CVS只是一些運(yùn)用RCS的腳本文件。后來(lái)這些腳本被組成一個(gè)單個(gè)應(yīng)用程序,但內(nèi)部結(jié)構(gòu)仍然有待改進(jìn)。直到今天,仍有 人企圖從頭開(kāi)始,重寫一遍CVS,但都不成功。我們?cè)?jīng)嘗試國(guó)重寫客戶端代碼以期更好的集成效果,但是,不成功。現(xiàn)在我們都不認(rèn)為CVS在功能上能走到多 遠(yuǎn)了。 Subversion的開(kāi)發(fā)員的確花了許多時(shí)間在內(nèi)部架構(gòu)上。我們?nèi)匀徊恢肋@些決策有多大的正確性等等。但有一點(diǎn)可以肯定,代碼有良好的可擴(kuò)展性,增強(qiáng)工作也在進(jìn)行著。
    網(wǎng)絡(luò)層 不能與Apache Web Server集成 有抽象的檔案庫(kù)存取概念, 可以讓人很容易地實(shí)作新的網(wǎng)絡(luò)機(jī)制. Subversion “先進(jìn)” 的網(wǎng)絡(luò)服務(wù)器, 是 Apache 網(wǎng)頁(yè)服務(wù)器的一個(gè)模塊,它以稱為 WebDAV/DeltaV 的 HTTP 變體協(xié)議與外界溝通. 這對(duì)Subversion 的穩(wěn)定性與互通性有很大的幫助, 而且額外提供了許多重要功能: 舉例來(lái)說(shuō), 有身份認(rèn)證, 授權(quán), 在線壓縮, 以及檔案庫(kù)瀏覽. 另外也有小而獨(dú)立的 Subversion 服務(wù)器程序, 使用的是自訂的通訊協(xié)議, 可以很容易地透過(guò) ssh 以 tunnel 方式使用
    重命名、刪除操作 不支持本地文件重命名提交;
    刪除分remove和erase兩種前者把本地和庫(kù)中文件都刪除,后者只是刪除本地文件;
    不能刪除文件夾
    支持文件重命名提交系統(tǒng)會(huì)提示刪除舊文件,創(chuàng)建新文件
    刪除本地文件提交 庫(kù)中文件也被刪除
    用戶訪問(wèn)權(quán)限 有read、write、creat、none這四種權(quán)限,任何人不能刪除文件夾(admin也只能跑到服務(wù)器上把相應(yīng)文件夾殘忍刪除?我暫時(shí)只知道這個(gè)方法……) 只有read、write、none三種權(quán)限 creat和delete權(quán)限好象和write是捆綁在一起的
    創(chuàng)建分支與基線 CVS 在創(chuàng)建分支的時(shí)候,需要對(duì)所有進(jìn)行分支的文件進(jìn)行依次的操作,因此分支的建立成本(主要是建立分支所需的時(shí)間,或消耗的計(jì)算資源)與參與分支的文件數(shù)量成比例,項(xiàng)目越大,版本庫(kù)越大,文件越多,分支的建立成本越高;基線(tag)的建立與此類似。 SVN 的分支和基線是通過(guò)執(zhí)行“拷貝”來(lái)建立的:回想一下在沒(méi)有引入版本管理工具的時(shí)候我們是如何進(jìn)行所謂的“分支”和“基線”管理的?答案顯然是“拷貝” — 我們通過(guò)“拷貝”或“備份”來(lái)建立基線;同樣,為支持多個(gè)開(kāi)發(fā)人員可以同時(shí)進(jìn)行開(kāi)發(fā),我們?yōu)槊總€(gè)開(kāi)發(fā)人員創(chuàng)建一份“拷貝”。

    posted on 2009-07-03 14:54 liyang 閱讀(1037) 評(píng)論(0)  編輯  收藏

    主站蜘蛛池模板: 亚洲av无码久久忘忧草| 五月天国产成人AV免费观看| 岛国片在线免费观看| 风间由美在线亚洲一区| 久久久亚洲精品蜜桃臀| 最近新韩国日本免费观看 | 亚洲国产精品13p| av永久免费网站在线观看| 亚洲国产av一区二区三区丶| 国产午夜影视大全免费观看| 国产在线一区二区综合免费视频| 亚洲免费人成视频观看| 亚洲男人的天堂在线va拉文| 久久久久久曰本AV免费免费| 男人扒开添女人下部免费视频| 99人中文字幕亚洲区| 亚洲国产精品无码久久青草| 亚洲性线免费观看视频成熟| japanese色国产在线看免费| 亚洲制服丝袜中文字幕| 亚洲AV无码专区在线播放中文| 宅男666在线永久免费观看| 国产精品免费观看调教网| 黄色一级毛片免费看| 亚洲中文字幕久在线| 亚洲av永久无码精品古装片| 国产午夜免费秋霞影院| 国产免费av片在线看| 免费国产黄网站在线观看 | 成人片黄网站色大片免费| 国产成人无码区免费内射一片色欲| 亚洲av无码有乱码在线观看| 1区1区3区4区产品亚洲| 国产成人A亚洲精V品无码| 免费jjzz在线播放国产| 无码专区永久免费AV网站| 久久午夜夜伦鲁鲁片免费无码| 国产精品成人69XXX免费视频| 亚洲爆乳精品无码一区二区| 亚洲一区二区三区四区视频| 亚洲天堂中文字幕|