版本控制工具

mfsh發表於2017-04-24

配置管理工具是配置管理相關理論的實踐載體,工具的功能範圍在某種程度上可以直接影響一個組織中配置管理水平的高低。

所以,選擇一個符合自己組織的配置管理工具,是一些企業建立配置管理規程,實施配置管理實踐過程中的重要一環。

以下介紹幾種常見的版本控制管理工具。

1、VSS– Visual Source Safe
此工具是Microsoft提供的,是使用的相當普遍的工具之一,他可以與VS.net進行無縫整合,成為了獨立開發人員和小型開發團隊所適合的工具,基本上Window平臺上開發的中小型企業,當規模較大後,其效能通常是無法忍受的,對分支與並行開發支援的比較有限。

其相關的外掛支援工具為SAW,SOS.

詳細請見: http://msdn.microsoft.com/zh-cn/library/ms181038(en-us).aspx

2、CVS–Concurrent Versions System,
此工具是一個開源工具,與後面提到的SVN是同一個廠家:Collab.Net提供的。

  CVS是源於unix的版本控制工具,對於CVS的安裝和使用最好對unix的系統有所瞭解能更容易學習,CVS的伺服器管理需要進行各種命令列操作。目前,CVS的客戶端有winCVS的圖形化介面,伺服器端也有CVSNT的版本,易用性正在提高。

  此工具是相當著名,使用得相當廣泛的版本控制工具之一,使用成熟的“Copy-Modify-Merge"開發模型,可以大大的提高開發效率,適合於專案比較大,產品釋出頻繁,分支活動頻繁的中大型專案。

可以與Eclipse等流行工具進行整合開發。

詳細請見:http://ximbiot.com/

3、SVN –CollabNet Subversion
此工具是在CVS 的基礎上,由CollabNet提供開發的,也是開源工具,目前越來越受到大家的歡迎,估計將來可能會成為最著名,使用最廣泛的工具。

  他修正cvs的一些侷限性,適用範圍同cvs,目前有一些基於SVN的第三方工具,如TortoiseSVN,是其客戶端程式,使用的也相當廣泛。在許可權管理,分支合併等方面做的很出色,他可以與Apache整合在一起進行使用者認證。

  不過在許可權管理方面目前還沒有個很好用的介面化工具,SVNManger對於已經使用SVN進行配置的專案來說,基本上是無法應用的,但對於從頭開始的專案是可以的,功能比較強大,但是搭建svnManger比較麻煩。

  是一個跨平臺的軟體,支援大多數常見的作業系統。作為一個開源的版本控制系統,Subversion 管理著隨時間改變的資料。這些資料放置在一箇中央資料檔案庫中。 這個檔案庫很像一個普通的檔案伺服器, 不過它會記住每一次檔案的變動。這樣你就可以把檔案恢復到舊的版本, 或是瀏覽檔案的變動歷史。Subversion 是一個通用的系統, 可用來管理任何型別的檔案, 其中包括了程式原始碼。

大家可以通過:http://www.collab.net/products/subversion/http://www.subversion.cn/來進行進一步的瞭解。

4、ClearCase
是由IBM Rational Software提供,此軟體是配置管理方面的高階軟體,功能強大,屬於陽春白雪級的產品,價格比較高。

  ClearCase的安裝和維護遠比StarTeam複雜,要成為一個合格的ClearCase的系統管理員,需要接受專門的培訓。ClearCase提供命令列和圖形介面的操作方式,但從ClearCase的圖形介面不能實現命令列的所有功能。

  要選用ClearCase,需要考慮的費用除購買license的費用外,還有必不可少的技術服務費用,沒有Rational公司的專門的技術服務,很難發揮出ClearCase的威力。

但是如果公司實力雄厚,採用此軟體進行配置管理,相信一定受益匪淺。

可以通過: http://www-306.ibm.com/software/awdtools/clearcase/support/index.html來進一步瞭解。

  1. GIT
    因為最初是從Linux起家的,非常依賴檔案系統的一些特性,這些在 Linux 下表現的很好,而 Windows 下特別糟糕Git 中文教程

    Git是一個開源的分散式版本控制系統,用以有效、高速的處理從很小到非常大的專案版本管理.

    Git 是 Linus Torvalds 為了幫助管理 Linux 核心開發而開發的一個開放原始碼的版本控制軟體。

    Torvalds 開始著手開發 Git 是為了作為一種過渡方案來替代 BitKeeper,後者之前一直是 Linux 核心開發人員在全球使用的主要原始碼工具。開放原始碼社群中的有些人覺得 BitKeeper 的許可證並不適合開放原始碼社群的工作,因此 Torvalds 決定著手研究許可證更為靈活的版本控制系統。儘管最初 Git 的開發是為了輔助 Linux 核心開發的過程,但是我們已經發現在很多其他自由軟體專案中也使用了 Git。例如 最近就遷移到 Git 上來了,很多 Freedesktop 的專案也遷移到了 Git 上。

6.StarTeam
StarTeam是Borland公司的配置管理工具,StarTeam屬於高階的工具,在易用性,功能和安全性等方面都很不錯。

  StarTeam的使用者介面同VSS的類似,它的所有的操作都可通過圖形使用者介面來完成,同時,對於習慣使用命令方式的使用者,StarTeam也提供命令集進行支援。同時,StarTeam的隨機文件也非常詳細。

  除了具備VSS,CVS所具有功能外,StarTeam還提供了對基於資料庫的變更管理功能,是相應工具中獨樹一幟的。StarTeam還提供了流程定製的工具,使用者可跟據自己的需求靈活的定製流程。與VSS和CVS不同,VSS和CVS是基於檔案系統的配置管理工具,而StarTeam是基於資料庫的。 StarTeam的使用者可根據專案的規模,選取多種資料庫系統。

  STARTEAM無需通過物理路徑的許可權設定,而是通過自己的資料庫管理,實現了類似WINDOWSNT的域使用者管理和目錄檔案ACL控制。 StarTeam完全是域獨立的。這個優勢可以為使用者模型提供靈活性,而不會影響到現有的安全設定。StarTeam的訪問控制非常靈活並且系統。您可以對工程,檢視,資料夾一直向下到每一個小的item設定許可權。對於高階別的檢視(view),訪問控制可以與使用者組、使用者、專案甚至檢視等連結起來。

  StarTeam是按license來收費的,比起VSS,CVS來,企業在啟動StarTeam進行配置管理需要投入一定資金。

  Borland公司將對使用者進行培訓,並協作使用者建立配置管理系統。並對使用者提供技術升級等完善的支援。

7、PVCS :
此工具由Serena公司提供,包括PVCS Version Manager,PVCS Professional 系列商用軟體,

它們是非常完備的SCM軟體,不僅包括了版本管理,而且包含了變更管理和過程管理,

在效能上要優於Clear case,價格上也比較高。HP等大型公司給此工具以很高的評價。

可以通過 http://www.serena.com/products/pvcs/index.html 來進一步瞭解。

8、BitKeeper
是由BitMover公司提供的,BitKeeper自稱是“分散式”可擴縮SCM系統。

不是採用C/S結構,而是採用P2P結構來實現的,同樣支援變更任務,所有變更集的操作都是原子的,與svn,cvs一致。

您可以通過http://www.bitkeeper.com/ 進一步瞭解。

相關文章