日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

svn服務(wù)器配置筆記

 Lucia‘s doc 2012-02-13

前幾天在網(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è)有兩種方式:
一是基于svnserve,這種方式是讓客戶端通過svn協(xié)議訪問版本庫,如果代碼只是在局域網(wǎng)內(nèi)共享的話,優(yōu)先考慮這種方式,因為這種方式最原始,最高效。

二是基于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ù)運行,運行如下命令:
      sc create svnserve binpath= "c:\svnserve\svnserve.exe --service 

     --root c:\repos" displayname= "Subversion" depend= tcpip start= auto

sc 的命令行很特殊。在 key= value 對中,key 與 = 之間不能有空格,但是在 value 之前,必須有空格。服務(wù)安裝完畢后,你需要在服務(wù)管理器中啟動它(僅此一次;當(dāng)服務(wù)器重啟后它會自動啟動)??梢酝ㄟ^TortoiseSVN的訪問svn://localhost/repository測試svn服務(wù)器是否架設(shè)成功。

架設(shè)基于Apache服務(wù)器的svn服務(wù)器。

找到 Subversion 安裝目錄下的以下文件:

bin/mod_authz_svn.so
bin/mod_dav_svn.so

復(fù)制到 Apache 安裝目錄下 modules 目錄中

bin/intl3_svn.dll
bin/libdb*.dll
復(fù)制到 Apache 安裝目錄下 bin 目錄中(這里似乎并不是必須的,我猜想這里或許是為了支持 Berkeley DB 而所作的操作,但我并不打算深入研究下去)

找到 Apache 安裝目錄下 conf/httpd.conf 文件,用文本編輯器修改:

找到以下兩句取消注釋:

#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so


增加以下兩句

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

在Apache的conf/httpd.conf文件,在末尾添加以下內(nèi)容

#配置虛擬目錄
<location /svn>
#引用遠(yuǎn)程訪問模塊
DAV svn

#版本庫路徑
SVNPath e:\SVN\Repository

#授權(quán)文件
AuthzSVNAccessFile e:\SVN\Repository\conf\authz

#所有用戶都需要身份驗證
Satisfy Any
Require valid-user

#驗證方式
AuthType Basic

#項目的名稱
AuthName "svn repository"

#用戶文件
AuthUserFile e:\SVN\Repository\conf\passwd.apache
</location>

      這樣基于Apache服務(wù)器的svn服務(wù)器就配置好了,下面我們就可以進(jìn)行權(quán)限配置了。

五、權(quán)限控制

 上面說過,建立版本庫后,subversion會在版本庫中建立若干文件夾,其中conf文件夾就是進(jìn)行權(quán)限控制配置的,里面有三個文件svnserve.conf,password,authz。用記事本打開svnserve.conf文件:找到以下兩行:
#password-db = passwd
...
#authz-db = authz

修改為:
password-db = passwd
...
authz-db = authz

用戶配置,用記事本打開password文件,添加如下幾行:
[users]
admin = admin
thinker = 123456

這里配置了兩個用戶,用戶名分別為"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 [filename] [username] [password]

如:

htpasswd -cb passwd.apache islee 123
htpasswd -b passwd.apache another 456

然后將生成的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測試。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多