1 .环境
centos6.4
2 .安装SVN
yum -y install subversion
3 .部署
创建版本库目录
mkdir /www/svndata
svnserve-d-r/www/SVN数据
4 .创建版本库
创建新的Subversion项目
svnadmin create/var/www/SVN data/njl rxx
将用户设置为允许jiqing访问
cd /var/www/svndata/njlrxx/conf
vi svnserve.conf
anon-access=none
Auth-access=写入
密码-数据库=密码
注:请不要在修改的文件前加空格。 如果不加入空间,启动SVN服务器将发生错误
vi passwd
[users]
#用户1=密码1
#用户2=密码2
jiqing=123456
5 .客户端连接
svn co svn://ip/njlrxx
用户名:jiqing
密码: 123456
=====================================
6 .实现SVN与WEB同步,可以出一个CO,也可以直接放在仓库里
1 )将WEB服务器路由设置为/var/www/webroot
2 )检查输出一份SVN
svncosvn ://localhost/njl rxx/var/www/webroot/njl rxx
将权限更改为WEB用户
chown-r Apache : Apache/var/www/webroot/njl rxx
3 )编写同步脚本
CD/var/www/SVN data/njl rxx/hooks /
cp post-commit.tmpl post-commit
编辑后期提交,在文件末尾添加以下内容
repos=' $1' rev=' $2' basepath=/var/www/webroot/njlrxxwebpath=' $ basepath/' export.utf-8 SVN update $
chmod x后提交
最后一个操作是关闭服务,然后打开服务:
关闭svn服务:
killall svnserve
打开svn :
svnserve-d-r/var/www/SVN数据
=====================================
SVN自动同步程序执行过程:
1、用户向SVN服务器提交文件,提交操作成功后,启动后期提交脚本
2、在后期提交版本文件中使用php_script.php运行PHP脚本
3、用PHP脚本通过exec系统调用更新服务器上的版本库工作副本
4、根据更新操作结果日志,对其他SVN版本库进行对应的操作处理