Linux环境下配置同步更新的SVN服务器

先搭建环境
Linux版本选择Centos5.0
#yum update
#yum -y install gcc
#yum -y install httpd
#yum install mod_dav_svn subversionDependencies Resolved

初期配置 我选择的是以HTTP方式实现SVN功能
cd /etc/httpd/conf.d/
vi subversion.conf
添加以下内容

# Make sure you uncomment the following if they are commented outLoadModule dav_svn_module
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
# Add the following to allow a basic authentication and point Apache to where the actual# repository resides.
<Location /boqii> #访问域名,设置后可以直接用[url]http://127.0.0.1/boqii[/url]来访问了
DAV svn
SVNPath /svn/boqii #SVN建立的版本数据库位置
AuthType Basic
AuthName "Subversion boqii"
AuthUserFile /etc/svn-auth-conf
Require valid-user
</Location>

建立SVN的用户和权限设置
建立第一个用户
htpasswd -cm /etc/svn-auth-conf woody
然后根据提示输入密码并且确认密码,以后再建立用户就不需要再加上参数-c了
htpasswd -m /etc/svn-auth-conf keen
htpasswd -m /etc/svn-auth-conf harry

建立版本数据库
cd /
mkdir svn
cd svn
svnadmin create boqii
chown -R apache.apache boqii

设置APACHE发布信息
DocumentRoot "/www"

<Directory "/www">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

service httpd start

建立导入目录
cd /
mkdir www
chmod 755 www
chown apache.apache /www

配置钩子程序
[root@www /]# cd /svn/boqii/hooks/
[root@www hooks]# cp post-commit.tmpl post-commit
[root@www hooks]# chmod 755 post-commit
[root@www hooks]# chown apache.apache post-commit
[root@www hooks]# vi post-commit
将里面的所有代码全部注释
添加以下这行代码
svn update --username=woody --password=woody [url]http://127.0.0.1/boqii[/url] /www
然后保存退出

导出版本version:0的数据库内容
svn checkout --username=woody --password=woody [url]http://127.0.0.1/boqii[/url] /www

配置完毕,重启一下APACHE服务器试试看
service httpd restart

参考文章

在 FreeBSD 下架設 Subversion

最简单的SVN (subversion)的配置for centos

Version Control with Subversion

我的博客 [url]www.yidaman.com[/url] 欢迎大家多多交流