一: SVN包括:服務器端(Subversion)和客服端(TortoiseSVN),安裝時,建議先安裝服務器端,再安裝客服端(因為安裝完客服端后需要重啟電腦)。
二:安裝完成后,創建服務器版本庫:創建一個文件夾(比如:D:\\svnserver),然后右鍵:TortoiseSVN ----> create respository here,然后在該目錄下生成六個文件(conf文件 夾、 db文件夾、hooks文件夾、locks文件夾、format文件和README.txt),其中配置文件在conf文件夾中。 其中conf文件夾下包含三個文件:authz(配置用戶權限:讀,寫權限 等 等)、
passwd(配置用戶名和密碼)和svnserve.conf(svn的核心配置)。
其中:
1: passwd配置:在該文件中,創建用戶的方式為:
用戶名 = 密碼 ,例如:創建用戶名為:admin,密碼為abcd,即為:admin = abcd
2: svnserve.conf配置:開啟
用戶訪問的功能:即只需開啟:
password-db = passwd 即可,具體操作:把password-db = passwd 前面的#去除即可。否則其他用戶不能訪問。
開啟
用戶權限的功能:即只需開啟:
authz-db = authz 即可,具體操作:把authz-db = authz 前面的#去除即可。否則配置的用戶權限將不生效。
3:authz 配置:找到該文件的 [groups] :在下一行:有兩種方式配置權限:
(1):
權限名稱 = 用戶名 ,然后在相應的目錄: 權限名稱 = 權限(比如:rw)例如:
[groups] -- 給權限分組,有利于多個用戶批量分配權限。
adm = admin -- adm 為組權限名稱,類似常說的“角色”,admin為用戶名,= 前后最后加上一個空格。
[/] -- / 表示svn服務器的跟目錄下,當然也可以用其他的目錄。比如:[/a/b/] 表示為/a/b/ 目錄下分配目錄權限 @adm = rw -- @表示組, adm表示組名,r表示只讀,即下載功能;r表示只寫,即上傳功能。
(2):
直接在相應的目錄下:用戶名 = 權限(比如:rw) 例如:
admin = rw -- admin 為用戶名,rw表示讀寫權限。 如果 svnserve.conf 的
authz-db = authz 不開啟。則權限分配則無效。當然這樣用戶也是可以上傳和下載的。


三:開啟SVN服務:
(1):臨時開啟,在dos界面中輸入: svnserver -d -r + svn服務器版本庫目錄 例如:svn版本庫目錄為:D:\\svnserver ,即為:
svnserver -d -r D:\\svnserver
-- 注意:-d, -r ,svn服務器版本庫目錄中間需要用空格隔開。而一旦關閉dos界面是,svn服務器也隨之關閉。 (2):永久開啟:即電腦啟動時自動開啟svn服務器。這樣需要把svn創建一個服務,然后把該服務器設置為自動啟動即可。具體操作:
(i) : 創建服務:在dos界面中輸入:
sc create svnserver binpath= svnserve.exe目錄 --service --root svn版本庫目錄 --
注意:=與svnserve.exe之間必須要加一個空格 例如svn服務器安裝在:D:\J2EE\SVN\Subversion目錄下
則為:
sc create svnserver binpath= "D:\J2EE\SVN\Subversion\bin\svnserve.exe --service --root D:\\svnserver" -- 雙引號不可缺少 然后:如果創建服務沒有問題,則輸入:services.msc 到電腦服務列表中會找到一個:svnserve服務。如果創建svn服務失敗,則無法找到svnserve服務。
如果創建svn服務出現了問題,還可以刪除svn服務。具體如: sc delete 服務名 例如: sc delete svnserver
(ii)把svnserve服務設置為自動啟動。以后電腦啟動時即啟動svn服務器。
四: 這樣svn服務器就配置好了。然后就可以在svn客服端進行各種操作了。
順便說一下:
創建服務:sc create 服務名 binpath= 程序啟動的位置 --service --root
-- 程序啟動位置即:該軟件啟動的那個文件的位置(如:d:\xx\xxx\xxxx.exe) 刪除服務:sc delete 服務名