·
搭建SVN
1. svn安裝
yum install subversion
2. 判斷是否安裝成功
svnserve --version
3. 建立svn版本庫
mkdir -p /svn/project/repos
4. 創建版本庫
svnadmin create /svn/project/repos
以上命令執行完了之後就會在repos下創建多個文件
5. 修改配置文件
完成上面步驟後便是配置文件了
vim /svn/project/repos/conf/passwd
· [users]
· # harry = harryssecret
· # sally = sallyssecret
· hello=123
創建個簡單的賬號密碼,賬號:hello, 密碼:123。
6. 配置權限authz
vim /svn/project/repos/conf/authz
· [/]
· hello=rw
這個其實還有其他配置,以後再詳細更新介紹,這裏是指定了hello用戶 擁有對所有文件的讀寫操作
·
7. 配置svnserve.conf
vim /svn/project/repos/conf/svnserve.conf
· [general]
· anon-access = none # 使非授權用戶無法訪問
· auth-access = write # 使授權用戶有寫權限
· password-db =/svn/project/repos/conf/passwd
· authz-db = /svn/project/repos/conf/authz # 訪問控制文件
必須在general目錄下,採用默認配置. 以上語句都必須頂格寫,去掉註釋, 左側不能留空格, 否則會出錯。
8. 啓動SVN
1. 啓動svn #svnserve -d -r /svn
2. 查看服務 #ps -ef|grep svn
3. 關閉svn服務 #kill -9 pid
總結下,完成上面的配置後,svn就可以使用了,使用svn://ip/repos訪問
·
配置SVN服務器的http服務
因爲svn密碼爲明文,http不支持明文.需要生成一個webpasswd文件
#cd /svn/project/repos/conf
#htpasswd -c webpasswd hello
#第一次需要 加上-c創建文件,如果沒有安裝httpd則需要執行yum install httpd -y進行安裝
執行完上述步驟後,便會多出一個webpasswd文件。
注意如果需要,多次加入用戶,則用htpasswd -m
#htpasswd -m webpasswd hello2
配置Apache
#vim /etc/httpd/conf/httpd.conf
在文件最後添加一下代碼:
· <Location /svn>
· DAV svn
· SVNPath /svn/project/repos/
· AuthType Basic
· AuthName "svn for project"
· AuthUserFile /svn/project/repos/conf/webpasswd
· AuthzSVNAccessFile /svn/project/repos/conf/authz
· Satisfy all
· Require valid-user
· </Location>
如果80端口被佔,則需要修改端口
修改Lister 80爲Listen 443
啓動http
#/etc/init.d/httpd restart
這是因爲,系統沒有安裝mod_dav_svn,安裝一下就可以了
#yum install mod_dav_svn
#yum install mod_authz_svn
#chmod -R o+rw /svn
//加下權限 不然用http訪問會報 SVN Can’t open file ‘/XXX/xxx/db/txn-current-lock’錯誤
再啓動下就可以了
訪問http://IP:端口/svn/ 就可以了,輸入賬號密碼就OK了,客戶端可以下在小烏龜。。。。