上节我们介绍到了SVN同步测试服务器中的第二部分设置Apache,本节继续向大家SVN同步测试服务器的方法,希望对大家的学习有所帮助,欢迎大家一起来学习SVN同步测试服务器创建方法。下面是具体介绍。
3。建立钩子
现在是SVN同步测试服务器中关键的一步,我们需要使我门的测试服务器127.0.0.2进行同步更新:
在/var/svn/hooks/目录下建立post-commit文件
viewsourceprint?1<BR>
2cd/var/svn/hooks/<BR>
3sudogeditpost-commit<BR>
输入以下内容
viewsourceprint?1<BR>
2#!/bin/sh<BR>
3REPOS="$1"<BR>
4REV="$2"<BR>
5svnupdate/var/www/127.0.0.2--usernameserver--passwordserverpassword<BR>
6#echo`whoami`,$REPOS,$REV>>/home/rollenc/svn_hook_var.txt<BR>
7#svnupdate/var/www/127.0.0.2--usernameserver--passwordserverpassword2>/home/rollenc/svn_hook_log.txt<BR>
说明:REPOS即第一个变量$1是subversion数据库的地址,REV即第二的变量$2是commit之后的版本号。
编辑完毕后设置文件权限为可执行:
viewsourceprint?1<BR>
2sudochmod755post-commit<BR>
搞定。
下面来试一下,创建SVN同步测试服务器有没有成功。
再建立一个工作副本,然后添加或者修改一些东西,最后上传。
以下的操作是在客户端中进行了,不需要在服务器断进行。
viewsourceprint?1<BR>
2cd/var/www<BR>
3svncheckouthttp://127.0.0.10/lab.luochunhui.com/trunk127.0.0.6#取出subversion上的文件作为你的工作副本,你的工作以后就在这个文件夹内展开。<BR>
4#所以,不需要sudo,但要保证有127.0.0.6文件夹存在,而且可写<BR>
5echo'<?phpphpinfo();?>'>phpinfo.php#建立一个phpinfo文件<BR>
6svnaddphpinfo.php#把phpinfo加入版本库<BR>
7svncommit#提交<BR>
在浏览器中你设定的同步服务器地址http://127.0.0.2/phpinfo.php,愿上帝保佑你的成果一切正常。可以看到phpinfo的信息。
如果不正常你可以稍微修改上面使用#注释掉的命名,使其输出的文件目录符合你的系统。
去掉#,重新运行,并通过查看上面设置的txt来获得一些信息。
第一句[#echo...]是获取当前的执行用户(如果正常应该与apache的执行用户和测试服务器文件所有者相同),$REPOS,$REV是获得的两个参数
第二句[#svn...]是把update的获取update的结果,一般错误信息在这里可以得到。到这里关于SVN同步测试服务器创建的内容就讲解完毕了,请关注本节其他相关报道。
【编辑推荐】