centos下配置svn服务器并同步web目录
初始化安装
删除已安装的旧版本
rpm -qa subversion
yum remove subversion
安装
yum -y install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
检查是否安装成功
[root@localhost~]# svnserve --version
svnserve, version 1.6.11 (r934486)
compiled Aug 17 2015, 08:37:43
Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.
Cyrus SASL authentication is available.
配置
创建svn仓
mkdir -p /opt/svn/test
svnadmin create /opt/svn/test/
设置账号
[root@localhost~]# cd /opt/svn/test/conf
[root@localhost~]# vi passwd
[users]
test=123456
:wq!
[root@localhost~]# vi authz
[groups]
web = test
[/]
@web=rw
:wq!
修改svn设置
[root@localhost~]# vi svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /option/svn/test
启动服务
[root@localhost~]# svnserve -d -r /opt/svn/test/
执行check
[root@localhost~]# svn --username test --password 123456 co svn://127.0.0.1 /www/test/
-----------------------------------------------------------------------
注意! 你的密码,对于认证域:
<svn://127.0.0.1:3690> /opt/svn/test
只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。
你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
-----------------------------------------------------------------------
保存未加密的密码(yes/no)?yes
取出版本 0。
设置钩子
[root@localhost~]# cd /opt/svn/test/hooks/
[root@localhost~]# vi post-commit
#!/bin/sh
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
svn update /www/test --username test --password 123456 --no-auth-cache
:wq!
chmod +x post-commit
重启svn
killall svnserve
svnserve -d -r /opt/svn/test
总结
服务器配置svn比较简单的,如果只是用来做版本仓库,可以不用钩子。