1.安裝svn和httpdnginx
yum install httpd apache
yum install subversion mod_dav_svn vim
建立倉庫目錄 svn
mkdir -p /var/www/svn ui
3.建立svn倉庫 spa
svnadmin create /var/www/svn/project 代理
4.配置改倉庫的配置文件 server
vim /var/www/svn/project/conf/svnserve.conf ip
5.禁用匿名用戶並開啓驗證用戶權限。 ci
anon-access = none
auth-access = write
6.整合Apache
vi /etc/httpd/conf.d/subversion.conf 加入如下:
<Location /project>
DAV svn
SVNPath /var/www/svn/project/
AuthType Basic
AuthName "svn"
AuthUserFile /var/www/svn/project/conf/passwd
Require valid-user
</Location>
給svn目錄權限。
chown apache.apache /var/www/svn -R
chmod 777 /var/www/svn -R
建立認證帳號。
cd /var/www/svn/project/conf
htpasswd -c passwd user
7.編輯authz文件,設置guest組包含user用戶。
[groups]
guest = user
#配置組權限,設置根目錄下guest組爲可讀寫,其餘用戶爲可讀。
[/]
guest = rw
* = r
svnserve -d -r /var/www/svn/project #開啓svn服務便可。http://ip/project
8:導入:
svn import -m psm http://192.168.0.162/project/
輸入用戶名密碼便可。
9:其餘:
添加認證用戶:htpasswd -c passwd aaa 編輯authz文件
[groups]
guest = aaa,user
svn co http://192.168.0.162/project/ #checkout代碼。
svn up svn目錄 --username aaa svn代碼目錄。 #更新代碼庫。
svn ci -m "備註信息" --username aaa svn代碼目錄。#提交到代碼庫。或者到svn目錄裏面svn ci -m "備註" --username aaa
10.因環境中配有nginx,則使用nginx代理轉發到apache上。具體實現以下:
因apache佔用80端口。因此要改掉nginx或Apache的端口號。
server {
listen 8080;
server_name www.qinyujie.com;
root /var/www/svn/project; #根目錄指向svn代碼目錄
location / {
proxy_pass http://192.168.0.162/project/; #利用proxy_pass將請求轉發到Apache上。
}
}
重啓nginx,訪問www.qinyujie.com:8080便可。