freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于cvs的版本控制系統(tǒng)服務(wù)器安裝與維護(hù)_畢業(yè)論文設(shè)計(jì)(編輯修改稿)

2025-08-16 05:37 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 Linux 環(huán)境下 CVS 服務(wù)器與 CVS 客戶(hù)端安裝與配置方法。 第五章 主要演示了在搭建好的 CVS 服務(wù)器環(huán)境和客戶(hù)端環(huán)境下項(xiàng)目中CVS 版本控制的應(yīng)用。 第六章 主要闡述了 CVS 版本控制系統(tǒng)的開(kāi)源化對(duì)于協(xié)同工作,或者對(duì)于大型軟件系統(tǒng)開(kāi)發(fā)的影響,以及介紹了兩款與 CVS 版本控制系統(tǒng)配合使用的軟件。河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 基于 CVS 的版 本控制系統(tǒng)介紹 5 2 基于 CVS的版本控制系統(tǒng)介紹 什么是 CVS CVS是一個(gè) C/S系統(tǒng),多個(gè)開(kāi)發(fā)人員通過(guò)一個(gè)中心版本控制系統(tǒng)來(lái)記錄文件版本,從而達(dá)到保證文件同步的目的。 CVS版本控制系統(tǒng)是一種 GNU軟件包,主要用于在多人開(kāi)發(fā)環(huán)境下的源碼的維護(hù)。與它相類(lèi)似的代碼版本控制軟件有Subversion。 CVS的基本概念 1) Repository(倉(cāng)庫(kù)) CVS 的倉(cāng)庫(kù)存儲(chǔ)全部的版本控制下的文件 copy,通常不容許直接訪問(wèn),只能通過(guò) cvs命令,獲得一份本地 copy,改動(dòng)后再 check in( mit) 回倉(cāng)庫(kù)。而倉(cāng)庫(kù)通常為與工作目錄分離的。 CVS通過(guò)多種方式訪問(wèn)倉(cāng)庫(kù)。每種方法有不同目錄表示形式。數(shù)據(jù)如何存放在 repository中:隨著 CVS版 本的不同,存放結(jié)構(gòu)會(huì)發(fā)生變化,一般情況下用戶(hù)無(wú)需了解數(shù)據(jù)到底是如何存放的。 2) Revision(修訂版) 每 一個(gè) file的各個(gè) revision都不相同,形如 , ,一般 個(gè) revision,后面的一個(gè)將自動(dòng)增加最右面的一個(gè)整數(shù),比如 , , ...有時(shí)候會(huì)出現(xiàn) ,原因見(jiàn)后。 revision總是偶數(shù)個(gè)數(shù)字。一般情況下將 revision看作時(shí) CVS自己內(nèi)部的一個(gè)編號(hào),而 tag則可以標(biāo)志用戶(hù)的特定信息。 3) Tag(標(biāo)簽) 用符號(hào)化 的表示方法標(biāo)志文件特定 revision的信息。通常不需要對(duì)某一個(gè)孤立的文件作 tag,而是對(duì)所有文件同時(shí)作一個(gè) tag,以后用戶(hù)可以?xún)H向特定 tag的 文件提交 或者 checkout。另外一個(gè)作用是在發(fā)布軟件的時(shí)候表示哪些文件及其哪個(gè)版本是可用的;各文件不同 revision可以包括在一個(gè) tag中。 如果命名一個(gè)已存在的 tag默認(rèn)將不會(huì)覆蓋原來(lái)的; 4) Branch(分支) 當(dāng)用戶(hù)修改一個(gè) branch時(shí)不會(huì)對(duì)另外的 branch產(chǎn)生任何影響??梢栽谶m當(dāng)?shù)臅r(shí)候通過(guò)合并的方法將兩個(gè)版本合起來(lái); branch總是在當(dāng)前 revision后面加上一個(gè)偶數(shù)整數(shù)(從 2開(kāi)始,到 0結(jié)束),所以 branch總是奇數(shù)個(gè)數(shù)字,比如 branch為 ,該分支下 revision可能 為 ,... 河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 基于 CVS 的版本控制系統(tǒng)介紹 6 5) Conflict(沖突) 完全是純文本的沖突,不包含邏輯上的矛盾,比如 CVS不能解決如下問(wèn)題:某人修改了函數(shù) f的參數(shù),而另外一個(gè)人在另外一個(gè)地方用老的參數(shù)調(diào)用該函數(shù)。文本沖突需要用戶(hù)自己參與解決, CVS無(wú)法自動(dòng)解決。 6) Module(模塊) CVS服務(wù)器根目錄下的第一級(jí)子目錄。通常用于存放一個(gè)項(xiàng)目的所有文件 7) Check out(檢出) 通常指將倉(cāng)庫(kù)中的一整個(gè)模塊首次導(dǎo)出到本地。 8) Check in(導(dǎo)入) 通常指通過(guò)提交整個(gè)目錄結(jié)構(gòu)并創(chuàng)建一個(gè)新的模塊。 9) Release(發(fā)行版本) 整個(gè)產(chǎn)品的版本 10) Update(更新) 從模塊中下載其他人的修改過(guò)的文件。更新本地的拷貝。 11) Commit(提交) 將自己修改過(guò)的文件提交到模塊中。 CVS的工作模式和工作思路 CVS( Concurrent Versions System)版本控制系統(tǒng)是一種 GNU軟件包,主要用于在多人開(kāi)發(fā)環(huán)境下的源碼的維護(hù)。 Concurrent有并發(fā)的、協(xié)作的、一致的等含義。實(shí)際上 CVS可以維護(hù)任意文檔的開(kāi)發(fā)和使用,例如共享文件的編輯修改,而不僅僅局限于程序設(shè)計(jì)。 CVS維護(hù) 的文件類(lèi)型可以是文本類(lèi)型也可以是二進(jìn)制類(lèi)型。 CVS用 CopyModifyMerge(拷貝、修改、合并)變化表支持對(duì)文件的同時(shí)訪問(wèn)和修改。它明確地將源文件的存儲(chǔ)和用戶(hù)的工作空間獨(dú)立開(kāi)來(lái),并使其并行操作。 CVS基于客戶(hù)端 /服務(wù)器的行為使其可容納多個(gè)用戶(hù)。這一特性使得 CVS成為位于不同地點(diǎn)的人同時(shí)處理數(shù)據(jù)文件(特別是程序的源代碼)時(shí)的首選。 所有重要的免費(fèi)軟件項(xiàng)目都使用 CVS作為其程序員之間的中心點(diǎn),以便能夠綜合各程序員的改進(jìn)和更改。這些項(xiàng)目包括 GNOME、 KDE、 THE GIMP和 Wine等。 在一臺(tái)服務(wù)器 上建立一個(gè)源代碼庫(kù),庫(kù)里可以存放許多不同項(xiàng)目的源程序。由源代碼庫(kù)管理員統(tǒng)一管理這些源程序。每個(gè)用戶(hù)在使用源代碼庫(kù)之前,首先要把源代碼庫(kù)里的項(xiàng)目文件下載到本地,然后用戶(hù)可以在本地任意修改,最后用CVS命令進(jìn)行提交,由 CVS源代碼庫(kù)統(tǒng)一管理修改。這樣,就好像只有一個(gè)人在修改文件一樣,既避免了沖突,又可以做到跟蹤文件變化等。 河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 基于 CVS 的版本控制系統(tǒng)介紹 7 CVS是并發(fā)版本系統(tǒng)( Concurrent Versions System)的意思,主流的開(kāi)放源碼網(wǎng)絡(luò)透明的版本控制系統(tǒng)。 CVS對(duì)于從個(gè)人開(kāi)發(fā)者到大型、分布團(tuán)隊(duì)都是有用的。 它的客戶(hù)機(jī) /服務(wù) 器存取方法使得開(kāi)發(fā)者可以從任何因特網(wǎng)的接入點(diǎn)存取最新的代碼。它的無(wú)限制的版本管理檢出 (check out:注 1)的模式避免了通常的因?yàn)榕潘鼨z出模式而引起的人工沖突。它的客戶(hù)端工具可以在絕大多數(shù)的平臺(tái)上使用。 CVS被應(yīng)用于流行的開(kāi)放源碼工程中,像 Mozilla, GIMP, XEmacs, KDE和 GNOME等。那么它到底怎么樣? 你可能會(huì)說(shuō),它非常棒,但是對(duì)于 我 來(lái)說(shuō)它能做什么?首先,基本的 :一個(gè)版本控制系統(tǒng)保持了對(duì)一系列文件所作改變的歷史記錄。對(duì)于一個(gè)開(kāi)發(fā)者來(lái)說(shuō),那就意味著在你對(duì)一個(gè)程序所進(jìn)行開(kāi)發(fā)的整個(gè)期 間,能夠跟蹤對(duì)其所作的所有改動(dòng)的痕跡。對(duì)你來(lái)說(shuō),有沒(méi)有出現(xiàn)過(guò)由于在命令行上按錯(cuò)鍵而導(dǎo)致一天的工作都白費(fèi)的情況呢?版本控制系統(tǒng)給了你一個(gè)安全的網(wǎng)絡(luò)。 版本控制系統(tǒng)對(duì)任何人都有用,真的。 (畢竟,誰(shuí)不愿意使用一個(gè)安全的網(wǎng)絡(luò)呢? )它們經(jīng)常被軟件開(kāi)發(fā)團(tuán)隊(duì)使用。在團(tuán)隊(duì)中工作的開(kāi)發(fā)者需要能夠調(diào)整他們的各自的修改;一個(gè)集中式版本控制系統(tǒng)允許那樣做。 CVS代碼的集中配置與調(diào)整 個(gè)人開(kāi)發(fā)者希望一個(gè)版本控制系統(tǒng)的安全網(wǎng)絡(luò)能夠運(yùn)行在他們的本地的一臺(tái)機(jī)器上。然而,開(kāi)發(fā)團(tuán)隊(duì)需要一個(gè)集中的服務(wù)器,所有的成員可以將服務(wù)器作為倉(cāng)庫(kù) 來(lái)訪問(wèn)他們的代碼。在一個(gè)辦公室中,沒(méi)有問(wèn)題 只是將倉(cāng)庫(kù)連到本地網(wǎng)絡(luò)上的一臺(tái)服務(wù)器上就行了。對(duì)于開(kāi)放源碼項(xiàng)目 … 噢, 還是沒(méi)有問(wèn)題,這要感謝因特網(wǎng)。 CVS內(nèi)建了客戶(hù)機(jī) /服務(wù)器存取方法,所以任何一個(gè)可以連到因特網(wǎng)上的開(kāi)發(fā)者都可以存取在一臺(tái) CVS服務(wù)器上的文件。 在傳統(tǒng)的版本控制系統(tǒng)中,一個(gè)開(kāi)發(fā)者檢出一個(gè)文件,修改它,然后將其登記回去。檢出文件的開(kāi)發(fā)者擁有對(duì)這個(gè)文件修改的排它權(quán)。沒(méi)有其它的開(kāi)發(fā)者可以檢出這個(gè)文件 并且只有檢出那個(gè)文件的開(kāi)發(fā)者可以登記 (check in:注 2)所做的修改。 (當(dāng)然對(duì)于管理員有很多 方法可以超越這個(gè)限制。 ) 想一下排它的檢出可能會(huì)如何工作: Bob的兄弟檢出 ,寫(xiě)好代碼后他什么也沒(méi)做。然后他去吃午飯了。 Bob吃完午飯后,發(fā)現(xiàn)他的老板所指給他的一個(gè) bug在 。他試圖檢出 … 但是版本控制系統(tǒng)不允許他這樣做,因?yàn)樗男值芤呀?jīng)把它檢出了。 Bob不得不等著他的兄弟吃完午飯回來(lái) (在這個(gè) 好 日子用了兩個(gè)小時(shí) ),他才可以修正 bug。 河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 基于 CVS 的版本控制系統(tǒng)介紹 8 在一個(gè)大型的開(kāi)放源碼工程中,因?yàn)殚_(kāi)發(fā)者可能在任意的時(shí)區(qū)工作得很晚,給予一個(gè)開(kāi)發(fā)者阻止任意地方的其它開(kāi)發(fā)者 繼續(xù)處理任意文件的能力很明顯無(wú)法運(yùn)轉(zhuǎn)。他們最終將因?yàn)椴荒軌蛟谒麄兿胍臅r(shí)候開(kāi)展項(xiàng)目而感到厭煩。 CVS通過(guò)它的無(wú)限制的檢出模式解決了這個(gè)問(wèn)題。檢出一個(gè)文件并不給定開(kāi)發(fā)者對(duì)那個(gè)文件的排它權(quán)。其它的開(kāi)發(fā)者也可以對(duì)其檢出,進(jìn)行他們自己的修改,并且將其登記回去。 詳細(xì)地回答就是當(dāng)多個(gè)開(kāi)發(fā)者對(duì)同一個(gè)文件作了修改 CVS會(huì)檢測(cè),并且自動(dòng)合并那些改變。 不用擔(dān)心 , CVS會(huì)很小心,并且將會(huì)自動(dòng)合并那些只要不是對(duì)代碼的同一行所作的改動(dòng)。如果 CVS不能安全的處理這些改動(dòng),開(kāi)發(fā)者將不得不手工合并它們。 有大量在許多平臺(tái)上可用的 CVS附加工具,它們給 CVS增加了功能或使得CVS更容易使用。 CVS的典型功能 1) 替代管理 你的經(jīng)理和項(xiàng)目負(fù)責(zé)人應(yīng)經(jīng)常與你交流以確保你時(shí)時(shí)記得進(jìn)度表、合并點(diǎn)、分支名和發(fā)布日期。如果他們不這樣做, cvs 也沒(méi)用。 cvs 只是一個(gè)用來(lái)使你的資源與你的步調(diào)一致的工具。但你是風(fēng)笛手和作曲家,沒(méi)有哪種樂(lè)器會(huì)自己演奏或是作曲。 不能代替開(kāi)發(fā)者之間的交流。在單個(gè)文件內(nèi)遇到?jīng)_突時(shí),大多數(shù)開(kāi)發(fā)者不費(fèi)多大力氣就能解決它們。但更常見(jiàn)的 沖突 (conflict),是那些難度較大、不在開(kāi)發(fā)者之間進(jìn)行交流就沒(méi)法解決的問(wèn)題。 當(dāng)在一個(gè)文件內(nèi)或多個(gè)文件中同時(shí)發(fā)生變化時(shí), cvs 并不知道何時(shí)它們會(huì)在邏輯上發(fā)生沖突。它的沖突 (conflict)概念是純粹文本意義上的,這種沖突會(huì)在同一個(gè)文件的兩種變化十分接近以致于會(huì)破壞合并命令 (如 diff3)。 CVS決不會(huì)指出程序邏輯上非文本或分布式的沖突。例如:假如你改變了在文件 A 中定義的函數(shù) X 的參數(shù)。同時(shí),別人在編輯文件 B,仍用舊參數(shù)調(diào)用 X 這個(gè)函數(shù)。此時(shí)產(chǎn)生的沖突 cvs 可就無(wú)能為力了。 2) 變化控制 變化控制可以指許多事情。首先它的意思可以是 BUG 跟蹤 bugtracking,就 是說(shuō)它能維持一個(gè)數(shù)據(jù)庫(kù),其中包括已報(bào)告的 BUG 和每一個(gè) BUG 狀態(tài) (是否已更正?在哪一個(gè)版本中?提交這個(gè) BUG 的人是否認(rèn)為已經(jīng)更正? )。為了使 cvs 和一個(gè)外部的跟蹤 BUG 系統(tǒng)協(xié)調(diào)一致,請(qǐng)參考 rcsinfo 和 verifymsg文件 (參閱 Administrative files)。 河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 基于 CVS 的版本控制系統(tǒng)介紹 9 變化控制的另一個(gè)方面指跟蹤這樣的情況,即對(duì)好幾個(gè)文件的改變實(shí)際上只是同一個(gè)邏輯變動(dòng)。如果你在一次 cvs mit 操作中檢入幾個(gè)文件, cvs 會(huì)忘掉它們是一起檢入的,它們共用一個(gè) LOG 信息的事實(shí) 只是把它們綁在一起而已。做一個(gè) gnu 風(fēng)格的 ChangeLog 可能會(huì)有點(diǎn)用。在一些系統(tǒng)中,變化控制的另一個(gè)方面是跟蹤每個(gè)變化的狀態(tài)的能力。一些變化由一個(gè)開(kāi)發(fā)者寫(xiě)出,而另一些變化則由另一個(gè)開(kāi)發(fā)者來(lái)作出評(píng)論,等等。一般來(lái)講,用 cvs 來(lái)做,是產(chǎn)生一個(gè) diff(用 cvs diff 或 diff),并且用電子郵件寄給某人,此人就可以用 patch 來(lái)應(yīng)用它。這是非常靈活的,但依賴(lài)于 cvs 之外的機(jī)制以保證事情不會(huì)崩潰。 3) 自動(dòng)測(cè)試 強(qiáng)制利用 mitinfo文件測(cè)試套件應(yīng)該是可能的。不過(guò)我沒(méi)有聽(tīng) 說(shuō)過(guò)多少項(xiàng)目試圖那樣做或那里有微妙的陷阱。 4) 內(nèi)置處理 有些系統(tǒng)提供一些方法確保變更或發(fā)布通過(guò)不同的步驟,以及各種所需的批準(zhǔn)過(guò)程。一般地,你可以用 cvs 來(lái)完成它,但是可能要多做點(diǎn)工作。有些情況下你想用 mitinfo、 loginfo、 rcsinfo 或 verifymsg文件,要求在 CVS 提交之前完成某些操作。你也會(huì)考慮諸如 branches 和 tags等特性是否能用在一個(gè)開(kāi)發(fā)樹(shù)中執(zhí)行任務(wù),然后僅當(dāng)它們被證實(shí)就把某些修改合并到一棵穩(wěn)定的樹(shù)中。 CVS 還有一個(gè)更加重要的特性:能記下每個(gè)文件的 每次修改,以及如何被修改 … 對(duì)于基于 Inter 的合作方式來(lái)說(shuō),這些特性太重要了。一個(gè)地域上分散的自愿者組織顯然不可能投入很多的時(shí)間來(lái)訓(xùn)練其成員彼此合作。因?yàn)檫@樣的話,當(dāng)該組織有成員變更的時(shí)候,為此付出的投資將損失殆盡。所以需要指定一套基本的項(xiàng)目分配方案,以確保新成員能較容易的適應(yīng)工作,同時(shí)也需要設(shè)置一個(gè)自動(dòng)的系統(tǒng)來(lái)接受外來(lái)代碼,并使每個(gè)成員能及時(shí)得到最新修改的代碼。 河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) Windows下 CVS 服務(wù)器與客戶(hù)端的配置 10 3 Windows下 CVS服務(wù)器與客戶(hù)端的配置 Windows 下 CVS服務(wù)器的配置 CVS是目前最常用的版本控制和軟件配置系 統(tǒng)。其開(kāi)源性在其普及的過(guò)程中功不可沒(méi),然而正因?yàn)殚_(kāi)源造成了其易用性較差。往往一個(gè)功能需要通過(guò)幾個(gè)看似不相干的操作配合才能進(jìn)行。 Windows下 CVS的多帳戶(hù)配置正是這樣一個(gè)相當(dāng)重要的,但很不好操作的功能。幾個(gè)難點(diǎn)如下: CVS源自 Unix系統(tǒng),其 Windows的移植版并沒(méi)有服務(wù)器功能。在 Windows下一般采用安裝 CVSNT這個(gè)軟件來(lái)建立 CVS Repository,但 CVSNT的操作方法和原始的 CVS略微不同。 CVS本身是命令行形式,其
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1