淺談Subversion設置及客戶端下載
Subversion的使用方法和CVS相似,相信大家都已經有所了解了,在這里呢就不對Subversion的使用進行詳細講解,我們只對Subversion的設置進行介紹,另外在講解一下Subversion客戶端下載問題。
1.Subversion簡介
Subversion是一款非常流行的開源版本控制系統,將來會逐漸替代CVS,支持可在本地訪問或通過網絡訪問的數據庫和文件系統存儲庫。Subversion不但提供了常用的比較、修補、標記、提交和分支等功能,其還增加了追蹤移動和刪除等功能。此外,Subversion支持非ASCII文本和二進制數據,所有這一切都使Subversion不僅對傳統的編程任務非常有用,同時也適于Web開發、圖書創作和其他在傳統方式下未采納版本控制功能的領域。Subversion具有如下特性。
保留大多數CVS特性。Subversion意味著比CVS更好,其擁有CVS的大多數特性,一般說來,Subversion的接口與CVS的十分相似,除了一些強制性因素而選擇其他方式。目錄、重命名和文件meta-data都已經版本化。Subversion客戶端不僅僅對文件內容和文件存放位置進行版本控制,也對目錄、副本、重命名操作進行版本控制。它也允許對附加在任意文件和目錄上的metadata進行版本化,并提供一種機制對文件的執行權限進行控制。
提交成為真實的原子操作。在整體提交成功之前不會有部分提交起作用,修訂號對應每次提交而不是對應每個文件,log信息被到修訂號上,并還是像CVS那樣需要額外的位置存放。可以選擇Apache網絡服務器,使用WebDAV/DeltaV協議。Subversion可以使用基于HTTP的WebDAV/DeltaV協議來進行網絡通信,由Apache網絡服務器提供源代碼庫端的網絡服務。這使得Subversion具有優于CVS的協同性,同時也提供了許多關鍵特性:認證、數據壓縮和基本的庫瀏覽。#p#
獨立服務器模式選項。Subversion通過使用自定義的協議也提供了獨立服務器選項,獨立服務器模式可以作為inetd的一個服務運行,或者以守護進程模式運行,并且提供了基本的認證和授權,也可以使用SSH作為通道。分支(Branching)和標簽(Tagging)的開銷更小(具有固定的時間)。分支和標簽都使用底層的“復制”操作來實現。復制操作使用很小的、固定大小的空間。任何復制都是一個標簽;如果你開始提交一個副本,那么它也就會成為一個分支。天然的客戶端/服務器,分層的庫設計。
Subversion從開始就設計為客戶端/服務器模式,從而免去了許多維護問題。代碼由一系列結構化的模塊組成,有定義良好的接口,設計為能夠被其他程序調用。C/S協議在兩個方向上發送diff。網絡協議在兩個方向傳輸diff時能夠高效地使用帶寬(CVS發送diff從服務器到客戶端,而不是從客戶端到服務器)。消耗和修改部分的大小成比例,而不是數據的大小。通常情況下,Subversion操作所耗費的時間與此次操作引起的變化成比例,而不是對這個項目改變的絕對值,這個是Subversion版本庫模型的特性之一。
可以選擇數據庫和純文件的源代碼庫實現。源代碼庫可以使用嵌入的數據庫后端創建,也可以使用定義格式的純文件的后端創建。對象鏈接的版本化。UNIX用戶可以在版本控制中放置對象鏈接。該鏈接會在UNIX的工作副本中重建,但不會在win32工作副本中重建。高效處理二進制文件。Subversion對于二進制文件的處理具有同處理文本文件一樣的高效性,這是因為其在傳輸和存儲連續的修訂版本中使用二進制的文件交換算法。可解析的輸出。所有的Subversion客戶端命令行輸出的內容都經過精心設計以達到易讀和自動解析的目的。腳本化也具備較高的優先級。本地化信息。Subversion會根據當前本地設置使用gettext()來顯示傳輸錯誤、報告和幫助信息。
2.下載并安裝Subversion客戶端
NetBeansIDE6.0提供對Subversion客戶端1.3.x或更高版本的支持。在使用NetBeans集成開發環境中的Subversion支持之前,需要在系統中安裝有Subversion客戶端軟件。Subversion客戶端軟件可以在http://netbeans.open.collab.net/下載。根據計算機操作系統的不同,選擇相應版本的命令行客戶端。
下載完畢后,打開安裝文件啟動安裝程序。默認情況下,Subversion客戶端軟件可執行程序被安裝在UNIX系統和MacOSX系統的/usr/local/bin/文件夾下,在WindowsXP系統中會安裝在C:\ProgramFiles\CollabNetSubversion\文件夾下。在選擇安裝位置時,盡量使用默認位置,安裝完成后單擊“Finish”按鈕關閉安裝程序。
【編輯推薦】