建立服務器
- 下載 SVN
- 解壓縮到任意路徑假設爲 %SVN%
- 最好將 SVN 的目錄添加到 path 變量。假設已經添加
- 運行 svnadmin create E:/SVN/SVN-Resposites ( 該目錄爲要建立的版本庫的路徑 )
- 運行 svnserve -d -r E:/SVN/SVN-Resposites ( 命令行停留在此處。服務已經提供鳥。此時可以使用SVN Client 訪問 svn://127.0.0.1/ )
ps: 5中,如果目錄名輸入錯誤,雖然服務能夠運行,但是不能正確訪問。
修改訪問控制
修改 E:/SVN/SVN-Resposites/conf/svnserve.conf 可進行訪問控制。
其中:
- anon-access = none 此項對應匿名用戶訪問權限。none:拒絕 read: 讀取 write: 寫入
- auth-access = write 此項對應驗證用戶訪問權限。同上
- password-db = passwd 用戶密碼文件設定。註釋後默認爲沒有驗證用戶
- authz-db = authz 用戶詳細ACL文件設定。註釋後則將 anon-access 和 auth-access 應用到全局
- realm = UATeamTest 領域。指定一個項目庫名稱。註釋後默認爲 uuid
在 E:/SVN/SVN-Resposites/conf/passwd 中 添加用戶名稱和密碼。格式如下:
- rodin = rodin 前用戶名,後密碼
爲Web項目自動發佈文件
- 在E:/SVN/SVN-Resposites/hooks 中 找到 post-commit.tmpl , 複製爲 post-commit.bat
- 修改內容爲: svn update E:/SVN/WebRoot --username slawdan --password slawdan ( 其中 E:/SVN/WebRoot 是要檢出到的web 目錄 )
ps : *nix 系統下,應該將該腳本名命名爲 post-comit
補充
- 將SVNServe 安裝爲系統服務
- E:/SVN/SVN-Serv/bin>sc create svnserve binpath= "e:/svn/svn-serv/bin/svnserve.ex
e --service --root e:/svn/svn-reposites" displayname= "Subversion" depend= tcpip
start= auto - 需要注意參數中=號後面的空格是必須有的~~
- E:/SVN/SVN-Serv/bin>sc create svnserve binpath= "e:/svn/svn-serv/bin/svnserve.ex
- 設置LANG=zh_CN.UTF8和APR_ICONV_PATH=svn安裝目錄/iconv,來解決在中文win下cmd中svn的亂碼問題
- 未嘗試……