1. 安裝SVN服務器:mysql
檢查是否已安裝sql
# rpm -qa subversion
安裝SVN服務器數據庫
# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
驗證安裝緩存
# cd /etc/httpd/modules # ls | grep svn mod_authz_svn.so mod_dav_svn.so
查看版本服務器
# svnserve --version
2. 代碼庫建立:tcp
安裝完成後要創建SVN庫svn
# mkdir -p /opt/svn/repositories # svnadmin create /opt/svn/repositories
執行後,自動創建repositories庫,查看/opt/svn/repositories文件夾包含了conf,db,format,hooks,locks,README.txt等文件,說明一個SVN庫已經創建。測試
3. 配置版本庫:spa
進入上面conf文件夾下,進行配置:rest
a. 用戶密碼passwd配置:
# vi + passwd //+表示光標放在文件最低端
修改passwd爲一下內容:
[users] # harry = harryssecret # sally = sallyssecret zhoulf=123456
b. 權限控制authz配置:
# vi + authz
設置哪些用戶能夠訪問哪些目錄,向authz文件追加如下內容:
[/] zhoulf=rw //給該用戶訪問全部庫的權限
或
[repositories:/project] //repository庫的根目錄權限
zhoulf=rw
/ 表示根目錄及如下,根目錄是svnserve啓動時指定的,咱們指定的是/opt/svn;/ 就是指對所有版本庫都具備權限
repositories:/ 表示對庫repositories的根目錄設置權限
PS:
* 權限配置文件中出現的用戶名必須已在用戶配置文件中定義。
* 對權限配置文件的修改當即生效,沒必要重啓svn。
c. 服務svnserve.con配置:
# vi + svnserve.conf
添加一下內容:
[general] #匿名訪問的權限,能夠是read,write,none,默認爲read anon-access=none #使受權用戶有寫權限 auth-access=write #密碼數據庫的路徑 password-db=passwd #訪問控制文件 authz-db=authz #認證命名空間,subversion會在認證提示裏顯示,而且做爲憑證緩存的關鍵字 realm=/opt/svn/repositories
這裏注意各標籤不能錯,也不能有重複,否則沒法鏈接。
d. 配置防火牆端口(若是須要):
不必定每一個人都須要設置,能夠先測試後再看是否須要打開端口
# vi /etc/sysconfig/iptables
添加一下內容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存後重啓防火牆
# service iptables restart
4. 查看:
a. 啓動SVN
# svnserve -d -r /opt/svn/repositories
b. 查看SVN進程
# ps -ef|grep svn|grep -v grep root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories
c. 檢測SVN端口
# netstat -ln |grep 3690 tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
5. 中止重啓SVN:
# killall svnserve //中止 # svnserve -d -r /opt/svn/repositories // 啓動
6. 測試鏈接:
使用TortoiseSVN進行測試:
1. SVN服務啓動後,須要使用客戶端測試鏈接:
客戶端鏈接地址:svn://192.168.15.231;而後,輸入用戶名密碼;
2. 新建一個文件夾,即本地的庫文件夾,右鍵checkout,將會獲得一個隱藏文件夾.svn;
3. 在此文件夾中放入項目內容,而後右鍵點擊commit,就能夠上傳本地項目了。