Ubuntu下SVN服務器環境配置專家指導
本節我們講解一下Ubuntu下SVN服務器環境配置問題,在這里和大家分享一下,希望通過本節的學習大家能夠掌握多種SVN服務器搭建方法。
平時的團隊開發,少不了要用一個協作工具。對于以前,無疑cvs是個無錯的選擇(像IBM的全球代碼維護)。但是,科技在發展嗎,現在有了更好的svn了,所以直接就是svn吧。有關svn的具體信息可以上它的官網或www.subversion.org.cn,網上關于svn的也不少,不過感覺大都出自一處,也不知道quote的人真的試過沒有。當然,學習嗎,但個人感覺學完人家的東西一定要有自己的體會。下面是我的一個簡單的配置過程。
首先,肯定是svn的安裝,這個很簡單:
sudoapt-getinstallsubversion
sudoapt-getinstalllibapache2-svn(這個是和apache配合使用的,apache的安裝就不說了)
完成安裝后,給系統添加一個用戶組(如svn),把想要加入這個組的加一下(至少要把你自己加進吧)。
顯然,像代碼維護,版本控制這種東西,肯定是cs結構的。所以下面先從svn服務器的配置說起。
svn服務器環境配置和簡單管理
svn服務器端的配置主要是一個資源庫的創建,這個資源庫可以就一個,也可以是一個樹狀結構的(不建議使用森林結構)。我想創建一個test資源庫,并把它放在/usr/local/svn下(資源庫一般都放在/usr/localor/home下):
$cd/usr/local/
$sudomkdirsvn
$sudomkdirsvn/test
$sudochown-Rroot:svnsvn/
$sudochmod-Rg+rwssvn/
準備工作做好了,下面就是創建資源庫了:
$sudosvnadmincreate/usr/local/svn/test
好了,這樣一個資源庫就建好了,很簡單,如果你要ls/usr/local/svn/test一下,就會發現出現了一些文件和文件夾(如,confdb等),它們的作用就不說了,去org上看吧。
別急,這時你還要做些工作
$sudochown-Rroot:svnsvn/
$sudochmod-Rg+rwssvn/
如果沒有這個,接下來就可能會出錯,除非你是root。
還有一些好使的工具,如svnlook,svnadmin,svndumpfilter,他們涉及到svn資源庫管理的方方面面,很強大,這里不介紹了,用的時候就查吧www.subversion.org.cn/svnbook。需要注意的是,這些管理工具的使用,后面跟的是絕對路徑,不要和下面客戶端的所使用路徑混淆。
svn客戶端的使用
Ubuntu下SVN服務器環境配置客戶端使用,svn客戶端就是用來訪問操作資源庫資源的,它有多方式,如直接的file訪問,自帶協議的訪問,http,https等待。這里只介紹兩種,即file直接訪問和自帶協議的訪問。
直接訪問
所謂直接訪問就是通過命令行直接對資源庫進行訪問。下面是一些例子:
我在我的家目錄下有個workspace文件夾,下面有個用eclipse創建的簡單工程叫com.sun.yangsq。我想把他維護到資源庫中
$cdworkspace
$svnimportcom.sun.yangsqfile:///usr/local/svn/test/com.sun.yangsq/trunk-m"testimport"
這樣,這個工程就被import到資源庫了。
如果想查看一下資源庫的信息,可以使用
$svnlistfile:///usr/local/svn/test/
如果想查看log信息,可以使用
$svnlogfile:///usr/local/svn/test/
此外,svn還有好多的命令可以使用,如checkout(co),diff,move,delete,add等等,上網查去吧。
自帶協議(svn://)的使用subversion自帶了一種訪問協議,很好用。但是,如果要使用這種協議,需要啟動svnserve,這也很簡單,如下:
$svnserve-d這樣就把本地的所有資源發到了網上,默認3690端口。訪問時使用的路徑如:
svn://ip/usr/local/svn/test/.....(這個ip不用帶端口)
如果只想發布某個資源,可以使用
$svnserve-d-r/usr/local/svn/test
訪問時使用的路徑如:svn://ip/com.sun.yangsq如果要checkout,可以$svncheckoutsvn://ip/com.sun.yangsq
需要注意的是,客戶端在使用類似svn,http://這種網絡協議訪問資源時(即通過svnserve進程),會通過一定的權限驗證,這種驗證是通過資源的一些配置文件設定的。如在本例中,這些配置文件放在了/usr/local/svn/test/conf/下,包括三個authz,passwd,svnserve.conf。這三個文件的配置就不詳談了。另外的幾種客戶端方式如http也不介紹了,svnbook上去看,都有。
如果想通過網絡方式,即svn,http等訪問(推薦使用這種方式,而不是file://方式),必須要把svnserve進程啟動,如果你不小心把機器重新啟動了,一定要手動把它再啟動一邊。svn確實很好使,eclipse也有它的插件(叫sublipse),很方便。Ubuntu下SVN服務器環境配置本節講解完畢。
【編輯推薦】
- 技術指導:詳解RedHat系統下SVN服務器搭建過程
- Subversion和TortoiseSVN如何在Windows下進行構建SVN版本控制
- 深度剖析:Subversion服務器安裝配置
- MyEclipse中SVN安裝配置新手指南
- 六小步輕松實現在Centos上配置SVN服務器