09.06
SVN是一个很好的版本控制工具,可以进行协同开发,查看代码历史记录等等。
服务器已经安装了nginx,作为前端服务器正在使用中。nginx目前还不支持SVN以http形式访问,所以需要安装apache。nginx作为前端服务器,apache作为后端服务器。
1. 安装各种软件
sudo yum install httpd subversion mod_dav_svn
2. 配置
新建svn 仓库:
mkdir /opt/svn/repos
chmod -R 777 /opt/svn/repos(一定要加-R,否则以后提交代码会有问题)
svnadmin create –fs-type fsfs /opt/svn/repos
添加项目:
mkdir -p /opt/svn/tmp/project1
cd /opt/svn/tmp/project1
mkdir branches
mkdir tags
mkdir trunk
svn import /opt/svn/tmp/ file:///opt/svn/repos/ –message “init”
配置apache:
vi /etc/httpd/conf/httpd.conf
增加:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /repos>
DAV svn
SVNPath /opt/svn/repos
AuthType Basic
AuthName “svn repos”
AuthUserFile /etc/svn-auth-conf
AuthzSVNAccessFile /etc/svn-accesspolicy
Satisfy Any
Require valid-user
</Location>
nginx已经占用了80端口,修改apache端口:Listen 8180
配置nginx:
vi /etc/nginx/nginx.conf
增加:
server {
listen 80;
server_name svn.xxx.com;
location / {
proxy_pass http://127.0.0.1:8180;
}
增加用户校验:
htpasswd /etc/svn-auth-conf username,设定密码
新建文件/etc/svn-accesspolicy,文件内容如下:
[groups]
developers = username
[/]
@developers = rw
最后启动apache,重启nginx:
sudo service httpd start
sudo service nginx restart
打开浏览器,输入:http://svn.xxx.com/repos