CVS的相關概念

2021-04-28 11:54:06 字數 1527 閱讀 9492

在我們使用cvs進行軟體開發過程中的版本控制的時候,經常遇到一些概念,弄清楚這些概念的含義有利於我們更好的服務於專案管理與開發

1.repository(倉庫

它是 cvs伺服器(可能在遠端,也可能在本地)的根目錄,我們所有的工作都儲存在這個倉庫中,包括源**和這些**的全部歷史。你可以把repository想象成乙個倉庫,倉庫中有許多「木桶」,每個「木桶」就是我們的乙個讓cvs管理起來的工程。對於cvs來說,這些「木桶」之間是沒有什麼關聯的,刪除乙個「木桶」不會影響別的「木桶」。我們所想象的木桶,在cvs術語中,又叫模組(module)。

2.module(模組)

就是上面我們所想象的倉庫中的「木桶」,裡面放的是乙個專案的所有檔案(包括源**,文件檔案,資源檔案等等)。在物理上,module是cvs伺服器根目錄下的第一級子目錄。

3.import(匯入)

我們本地有乙個軟體專案,裡面有許多各種型別的檔案,都需要用cvs進行版本管理,那麼第一步就是把這個軟體專案的整個目錄結構都import到cvs的倉庫中去。經過這種匯入,cvs將為你的專案建立乙個新的「木桶」----module,即模組。

4.checkout(匯出)

指將倉庫中的乙個「木桶」(module, 模組)中的東西匯出到本地的工作目錄下,然後我們可以在wincvs的管理下,進行工作,修改其中的內容。

5.commit(提交)

我們在本地的工作目錄下,對工程中的檔案進行修改,這些修改,需要提交給cvs的倉庫,這個過程,就叫commit。你可以commit乙個檔案,也可以commit整個目錄。

6.update(更新)

7.revision(版本)

這是cvs中乙個需要特別注意的概念,它指的是單個檔案的版本,而不是整個專案的版本。基本上,單個檔案每次的修改,經過commit之後,它的revision都要改變一次,比如從1.1到1.2到1.3等等。特別要注意,單個檔案的版本(revision)與整個工程產品的版本(version,或者release)可以沒有任何關係。例如,整個產品現在發行1.0版本(version 1.0)了,但是產品的源**檔案中,有的檔案版本(revision)可能是1.9, 有的是2.1,等等。這很容易理解,因為為了發行產品v1.0,我們需要對源**進行多次修改編譯。

8.release(發行)

整個產品的正式發行版本,例如vc5.0, vc6.0等。

9.tag(標籤)

在乙個開發的特定期,對乙個檔案或者多個檔案給的符號名,一般是有意義的字串,如「stable」,「release_1_0」等。比如,我們對某個檔案的1.5版本加上標籤:「memory_bug_fixed」,借助這個有意義的標籤,我們可以理解1.5版本解決了記憶體bug,所以說tag賦予了版本一些文字含義。

死鎖的相關概念

1.死鎖是指多個程序迴圈等待它方占有的資源而無限期地僵持下去的局面,產生死鎖的根本原因是資源有限並且操作不當 2.產生死鎖的4個必要條件 互斥條件 不可搶占條件 占有並且申請條件和迴圈等待條件 3.死鎖的預防 只要破壞四個必要條件中的任意乙個,死鎖就不會發生,也就是說,打破互斥條件 打破不可搶占條件...

事務相關的概念

1.什麼是事務 事務就是邏輯上的一組操作,組成事務的各個執行單元,操作要麼全都成功,要麼全都失敗.轉賬的例子 冠希給美美轉錢,扣錢,加錢。兩個操作組成了乙個事情!2.事務的特性 原子性 事務不可分割.一致性 事務執行的前後資料的完整性保持一致.隔離性 乙個事務執行的過程中,不應該受到其他的事務的干擾...

LCD的相關概念

1 畫素 pixel 1 整個影象是由乙個個的畫素組成的,畫素就是乙個顯示點。2 畫素間距 pitch 1 pitch是連續2個畫素的畫素中心的距離。一般的畫素是方形的,所以橫向pitch和縱向的pitch一樣的。但是也有不一樣的。2 畫素間距會影響螢幕的最佳 距離。畫素間距大的適合遠距離看,畫素間...