一,安装步骤
1, 检查是否安装过svn
rpm -qa subversion
2, 卸载旧版本svn
yum remove subversion
3, 安装SVN,输入官网提供的命令
yum install subversion mod_dav_svn
4, 查看svn版本信息
svnserve –version
二,配置
1, 创建svn仓库目录
mkdir /home/svnroot/test -p
2, 创建项目
svnadmin create /home/svnroot/test
3, 检查是否创建成功
cd /home/svnroot/test
ls 查看创建成功后生成的目录
conf是该版本库的文件,里面有三个文件
authz是权限控制文件,配置如下
[/] #所有文件的权限配置
admin = rw #admin用户具有rw权限
[doc:/] #doc文件的权限配置
admin = rw #admin用户具有rw权限
passwd是账号密码文件
[users]
admin=123456
svnserve.conf
取消注释
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /home/svnroot/test #认证空间名,版本库所在目录
三,启动svn服务
1, svnserve -d -r /home/svnroot
注意事项:不要用svnserve -d -r /home/svnroot/test/否则checkout时会提示:URL svn://192.168.1.99/svntest doesn‘t exist...
四,同步到web目录
1, 进入到目录/home/svnroot/test/hooks
复制post-commit.tmpl为post-commit
cp post-commit.tmpl post-commit
修改post-commit为可执行权限
chmod 755 post-commit
vim posy-commit
输入如下内容
export LANG=zh_CN.UTF-8
svn co svn://192.168.1.64/test /usr/share/nginx/html/testsvn
LOG_PATH=/tmp/svn_test.log
WEB=/usr/share/nginx/html/testsvn
REPOS="$1"
REV="$2"
svn update --username admin --password myadmin $WEB --no-auth-cache >> $LOG_PATH
回到shell
svn co svn://192.168.1.64/test /usr/share/nginx/html/testsvn
输入root密码myadmin
输入svn认证用户admin
输入svn认证用户密码123456
进入到web目录中,查看,已经完成同步