windows server 2003 svn 服務器安裝及配置(無Apache)

SVN,不用介紹了,一款至關不錯的版本控制服務器,跨於多個平臺之上。之前在Linux下裝過一個,配置相對複雜一點,可是windows下的服務器安裝比較簡單。具體過程以下:
一、安裝服務器。我選擇了比較好用的VisualSVN-Server,如今版本是2.1.2

二、客戶端安裝TortoiseSVN,如今版本1.6.8,以及其LanguagePack,均可如下到。在安裝完客戶端後,就能夠在文件夾 右鍵的菜單裏面看到版本控制的信息了。對,就是這麼好用,它將windows的文件夾進行了重載,受版本管理的文件夾都會有相應的圖標,相應好認。
在安裝完語言包後,右鍵進行設置,把語言設置爲中文便可。
注意:在服務器端同時安裝客戶端是爲了配置及使用服務器方便一些。並不必定要裝。

三、進行服務器端的配置。
啓動服務器:能夠選擇將其安裝爲 系統服務,也能夠創建一個 批處理文件,將其拖到系統啓動下。
下面以批處理文件爲例:
cd H:\Program Files\VisualSVN Server\bin\
svnserve.exe -d -r G:\ServerData\Data\SVN\Repositories\svnrepos\
該路徑爲目前的版本庫位置。運行該批處理文件, 彈出的命令窗口不要關閉。如今能夠看到 3690端口已經被監聽了,說明啓動成功了。

系統服務的安裝方法:
sc create svnservice binpath= "H:\Program Files\VisualSVN Server\bin\svnserve.exe --service -r G:\ServerData\Data\SVN\Repositories\" displayname= "SVNService" depend= Tcpip start= auto
可是不必定能成功。

精細的訪問權限設置
在版本控制中,權限配置是至關重要的,SVN服務器採用 authz文件來進行權限配置。首先在某個文件夾下創建版本庫(右鍵中有哦~~~),而後對其下的conf文件夾內的一些文件進行配置。
文件:svnserve.conf,該文件對SVN進行整體配置,包括是否使用賬號密碼,使用使用authz權限控制方式,默認的訪問權限等等。
個人文件內容以下(我去除了被註釋掉的內容):
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz.public
文件:passwd,該文件中保存了用戶的賬號和密碼,看看就會寫了,很少說。
文件:authz,該文件用於配置精細的訪問權限。
這裏有兩種狀況:
A:-r直接指定到版本庫(稱之爲單庫svnserve方式)
好比,有一個庫project1,位於D:\svn\project1
使用如下命令啓動svnserve
  1. svnserve -d -r D:\svn\project1
在這種狀況下,一個svnserve只能爲一個版本庫工做
authz文件若是配置成下面這樣就是錯的,
  1. [groups]
  2. admin=user1
  3. dev=user2
  4. [project1:/]
  5. @admin=rw
  6. @doc=r
應該配置成
  1. [groups]
  2. admin=user1
  3. dev=user2
  4. [/]
  5. @admin=rw
  6. @doc=r
由於[project1:/]表示庫project1的根目錄,而按上面的啓動參數,是沒有庫的概念的。
使用相似這樣的URL:svn://192.168.0.1/ 便可訪問project1

B:-r指定到版本庫的上級目錄(稱之爲多庫svnserve方式)
一樣,有一個庫project1,位於D:\svn\project1
若是使用如下命令啓動svnserve
  1. svnserve -d -r D:\svn
這種狀況,一個svnserve能夠爲多個版本庫工做,
這時若是想限制指定庫的指定目錄,就應該指定具體的庫,像這樣
  1. [groups]
  2. admin=user1
  3. dev=user2
  4. [project1:/]
  5. @admin=rw
  6. @doc=r
若是此時你還用[/],則表示全部庫的根目錄,同理,[/src]表示全部庫的根目錄下的src目錄
使用相似這樣的URL:svn://192.168.0.1/project1 便可訪問project1
這樣的URL:svn://192.168.0.1/project2 便可訪問project2

2,對中文目錄進行權限控制時,沒有將權限文件authz改成utf-8格式。

svn對於非英文文件名和目錄名使用utf-8格式編碼處理,要對中文目錄進行正確控制,
應該使用無BOM的utf-8格式,如何將默認的文件轉爲utf-8,
我使用的是UltraEdit的菜單"ASCII to UTF-8 (Unicode Editing)"。在UltraEdit的配置中,能夠設置有無BOM
相關文章
相關標籤/搜索