前幾天在網(wǎng)上找資料給我們的項目配了一個SVN服務(wù)器,今天想把這些資料和心得寫下來,以后用得著! 一、準(zhǔn)備工作 1、下載subversion,地址:http://subversion./servlets/ProjectDocumentList?folderID=11151&expandFolder=11151&folderID=91。這里有各個版本的安裝文件,我用的是1.6.1windows msi格式的安裝文件,這個版本的安裝文件支持用Apache服務(wù)器作為SVN服務(wù)器,Apache服務(wù)器版本要求2.2以上。 2、下載TortoiseSVN,地址:http:///downloads。 3、下載IDE插件,如果用visual studio2005,2008或者2010作為開發(fā)環(huán)境,可以下載AnkhSVN插件來在visual studio中利用SVN管理源代碼,地址:http://ankhsvn.open./downloads。如果是用Eclipse或者M(jìn)yEclipse作為開發(fā)環(huán)境,可以下載subeclipse插件來在Eclipse中利用SVN管理源代碼 http://subclipse./servlets/ProjectProcess?pageID=p4wYuA。我們項目用的是c#開發(fā),所以我們用的IDE是vs2008,所以下面主要介紹的是在vs2008上安裝AnkhSVN插件來管理源代碼。 4、下載Apache服務(wù)器,地址:http://httpd./download.cgi,在Apache官網(wǎng)上可以找到2.2以上版本的Apache服務(wù)器。 二、安裝 這幾個軟件的安裝都很傻瓜式,都是一直next到最后,TortoiseSVN安裝完后需要重啟系統(tǒng),不過如果安裝了AnkhSVN插件的話,TortoiseSVN不是必須的。 安裝好AnkhSVN后,打開vs2008,打開菜"工具"->選項,找到souce control 選擇”插件選擇“在右邊的插件選擇下拉列表中選擇AnkhSVN-subversion support for visual studio。這樣visual studio就會出現(xiàn)相應(yīng)的菜單和界面,然后就可以在visual studio上直接進(jìn)行svn操作了。 三、建立版本庫 安裝subversion的時候會自動配置好環(huán)境變量。建立版本庫可以直接通過dos命令,或者用TortoiseSVN。我這里介紹用dos命令創(chuàng)建版本庫。打開dos界面,輸入: svnadmin create e:\svn\repository 這樣就在e盤的svn目錄下建立了名為repository的版本倉庫。在repository文件夾下subversion會自動建立一些文件夾,待會兒會講到。 四、架設(shè)SVN服務(wù)器 svn服務(wù)器的架設(shè)有兩種方式: 二是基于Apache服務(wù)器,這種方式是讓客戶端通過http協(xié)議訪問版本庫,當(dāng)代碼需要跨網(wǎng)共享的時候,我們就要用到這種方式了。 架設(shè)基于svnserve的svn服務(wù)器,在dos界面輸入以下命令: svnserve --daemon --root e:\svn 這個命令在服務(wù)器端建立了一個守護(hù)線程監(jiān)聽3690端口(svn默認(rèn)端口)等待請求。dos窗口不能關(guān)閉,否則守護(hù)線程退出。這個方法不是最好的方法,因為這樣,每次重啟服器的時候都要重新打開一個dos窗口,并且要一直保持dos窗口。最好的方法是將svnserve作為windows服務(wù)運行,運行如下命令: --root c:\repos" displayname= "Subversion" depend= tcpip start= auto
架設(shè)基于Apache服務(wù)器的svn服務(wù)器。 找到 Subversion 安裝目錄下的以下文件: bin/mod_authz_svn.so 復(fù)制到 Apache 安裝目錄下 modules 目錄中 bin/intl3_svn.dll 找到 Apache 安裝目錄下 conf/httpd.conf 文件,用文本編輯器修改: 找到以下兩句取消注釋: #LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_svn_module modules/mod_dav_svn.so 在Apache的conf/httpd.conf文件,在末尾添加以下內(nèi)容 #配置虛擬目錄 #版本庫路徑 #授權(quán)文件 #所有用戶都需要身份驗證 #驗證方式 #項目的名稱 #用戶文件 這樣基于Apache服務(wù)器的svn服務(wù)器就配置好了,下面我們就可以進(jìn)行權(quán)限配置了。 五、權(quán)限控制 上面說過,建立版本庫后,subversion會在版本庫中建立若干文件夾,其中conf文件夾就是進(jìn)行權(quán)限控制配置的,里面有三個文件svnserve.conf,password,authz。用記事本打開svnserve.conf文件:找到以下兩行: 修改為: 用戶配置,用記事本打開password文件,添加如下幾行: 這里配置了兩個用戶,用戶名分別為"admin"和"thinker"。其中"admin"用戶的口令為"admin";"thinker"用戶的口令為"123456"。如果是Apache服務(wù)器的話,password文件應(yīng)該由Apache來生成,因為在 Subversion 和 Apache 中無法使用相同的 passwd 文件,因為 Apache 是以加密方式存儲密碼,而 Subversion 使用明文儲存密碼,所以要使用Apache服務(wù)器就要使用Apache生成的passwd文件。 使用Apache的bin目錄下的htpasswd.exe可執(zhí)行文件生成用戶文件,第一次生成使用-cb參數(shù),添加新用戶使用-b。 如: htpasswd -cb passwd.apache islee 123 然后將生成的passwd.apache文件拷到版本庫的conf文件夾下,并將Apache conf文件夾下的httpd.conf剛剛添加的<location>段AuthUserFile屬性值改為passwd.apache文件。 組和權(quán)限配置 用文本編輯器打開authz文件,添加如下文字: [group] all=thinker,admin
[/] @all=rw *=r 上面兩段文字的意思是,添加一個用戶組all,包括admin合thinker兩個用戶,對所有庫給all用戶組添加讀寫權(quán)限,所有用戶添加讀權(quán)限。 Apache服務(wù)器配置好后就可以在瀏覽器中通過輸入http://localhost/svn測試。 |
|