建立Subversion倉庫在本地如何操作?
本節和大家一起學習一下如何在本地建立Subversion倉庫,主要內容有安裝Subversion和配置用戶和權限等,希望通過本節的介紹,大家能夠掌握在本地建立Subversion倉庫的方法。
本地建立Subversion倉庫
Subversion真是個好東西,大大提高了團隊協同開發的效率,也為本地進行程序開發時保存不同版本提供了便捷。再也不用為一個個小程序在不同進度時,建立xxxx200808026.zip之類突兀文件了,一段時間后自己都不知道這個壓縮內包含什么進度內容了。有了Subversion后一個update加一條清楚的注釋搞定一切。
今天在機器建了一個版本庫,將過程記下以便日后查閱。我的環境是WindowsXP+SP3+SVN 版本 1.4.6 (r28521)
安裝Subversion。從官網下載回來一路Next,略過。
在我的F盤建立一個SVN目錄,用來存放版本庫的文件,將來所有代碼也將提交到這里。
我的Subversion是安裝在D:\Program Files\Subversion\bin下的,在CMD下將目錄切換到此處。輸入如下命令:svnserve -d -r f:\svn,該命令是用來啟用SVN服務的,回車以后,將進入等待界面。進行其他操作需要另起一個CMD,否則會導致后面連接不上。
簡單介紹一下這條命令,-d表示svnserve.exe將以服務的形式在后臺運行,-r表示root,以f:\svn作為下面連接服務器的概目錄。由于Subversion1.4開始,Subversion本身就集成Windows服務的工具,所以可以直接將svnserve注冊成Windows系統服務,隨系統啟動一起啟動在后臺運行。
注冊成服務的腳本是這樣的:
sc create svn
binpath= “D:\Program Files\Subversion\bin\svnserve.exe –service -r f:\svn”
displayname= “Subversion Service”
depend= Tcpip
start=auto
在上腳本可以連成一行,將換行處換成空格即可。我個人比較傾向***種方式,畢竟為一個幾天才更新一次或者一天才更新一次的svn,注冊成系統服務我感覺劃不來。在提交的時間大不開個Cmd執行svnserve -d -r f:\svn還是比較方便的。如果你想刪了剛才的服務,可以使用net stop svn sc delete svn,這兩句腳本即可。
這一步用來建庫。命令是:svnadmin create f:\svn\test –fs-type fsfs,如果沒出現在什么錯誤的話,你進入F:\SVN目錄后,將會看到Subversion已經建立了一系列文件了,這些文件就是你要的版本庫主體文件。這條命令后面的參數–fs-type fsfs,是建立版本庫的不同存儲方式。還有一種比較常見的就是–fs-type bdb。兩種方式各有其優缺點,fsfs已經足夠我用了。關于兩種方式的異同,請閱這篇文章:subversion中BDB和FSFS兩種存儲方式的比較。本地建立Subversion倉庫時,安裝好Subversion以后就要配置用戶和權限了。
配置用戶和權限。打開f:\svn\test目錄下的conf文件夾,該文件夾用來保存用戶信息及權限的。其中的svnserve.conf用來記錄匿名訪問和通過驗證的訪問權限,以及用戶文件與權限分配文件名。svnserve.conf中我是這樣配置的:
[general]
anon-access = read #匿名用戶根權
auth-access = write #通過驗證用戶根權
password-db = passwd #用戶帳號文件名
authz-db = authz #權限分配文件名
文件passwd,是用來記錄用戶帳號的文件。我是這樣配置的:
[users]
lonkil = vcfans.com
文件authz是用來記錄種權限的分配,包插用戶組,以及各個用戶可以具備不同的根限,管理的相當嚴格。我的配置如下:
[test:/]
lonkil = rw
導入***版數據到版本庫中。命令“svn import test svn://127.0.0.1/test -m “the first one” –username lonkil –password vcfans.com”,此時我當前路徑在F:\MySpace下,該命令將F:\MySpace\test文件結構全部導入到Subversion庫中。-m參數表示添加的該版本的注釋。
到這里我已經簡單的將本地建立Subversion倉庫的過程介紹結束了,接下來就可以使用了。就可以通過svn://127.0.0.1/test進行update,commit等等操作了。
【編輯推薦】
- 在線指導:Windows系統服務自動運行對于SVN如何實現
- Subversion新理念及安裝問題簡單剖析
- 用Tomcat和MySQL生成動態內容
- 如何實現SVN倉庫目錄規范化管理?
- 五步輕松實現SVN安裝和啟動