2013
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

回复功能关闭


Hit Counter by http://yizhantech.com/