一:编译安装的
yum install httpd-devel sqlite sqlite-devel -y
./configure --prefix=/usr/local/svn --with-ssl --with-zlib
make && make install
ln -s /usr/local/svn/bin/svn* /usr/bin/
二:YUM安装的
yum install subversion.x86_64 subversion-devel.x86_64 cyrus-sasl-md5 -y
三:常用操作(其他SVN+HTTPD或者SVN+SSH就不介绍了)
mkdir -p /home/svn
mkdir -p /home/wwwroot/a.com/
touch /home/svn/{authz,passwd}
svnserve -d -r /home/svn/ --log-file /var/log/svn.log
编辑好用户和密码
svn co svn://127.0.0.1/a.com/ /home/wwwroot/a.com //a.com为仓库名称
cat /home/svn/authz
[groups]
admin = glq
[/]
@admin = rw
[a.com:/] //仓库名称
yuangong1 = rw
cat /home/svn/passwd
[users] //密码可以用htpasswd 加密,如htpasswd -bm /home/svn/passwd glq 123456
glq = 123456
yuangong1 = 123456
编辑配置文件,取消注释并修改以下几点,公用passwd/authz
cat /home/svn/a.com/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = ../../passwd
authz-db = ../../authz
自动提交到测试站的根目录
cat /home/svn/a.com/hooks/post-commit
#!/bin/sh
export.UTF-8
REPOS="$1"
REV="$2"
svn update --non-interactive /home/wwwroot/a.com/$dir --username glq --password 123456 --no-auth-cache
chmod +x /home/svn/a.com/hooks/post-commit
svn co http://127.0.0.1/a.com /home/wwwroot/a.com/ //输入账号密码并YES储存
现在可以在客户端上测试啦。
升级客户端:
yum update subversion -y
编译的重新编译,覆盖可执行文件即可
验证版本号完整:svnadmin verify /path/repo
错误处理:
svn: E000022: Can‘t convert string from ‘UTF-8‘ to native encoding:
env查看一下环境
LANG=en_US.UTF-8
再重新检出,最好放到/etc/profile下
更换SVN服务器
svn relocate svn://ip/cangku
备份还原:
实时同步: