Subversion同步文件到服务器开发和测试

安装好subversion(svn)后,可以轻松完成版本管理和共享。但是如果是web项目,需要即时测试和生成干净的程序包该如何去配置?之前我也在犯难,经过一下午的研究,现把配置的过程告诉大家 下面我以创建一个test项目为例,项目目录/var/www/svn/test 1、更改和创建文件夹 这里我们需要在服务器根目录创建一个demo文件夹和一个项目开发文件夹project,demo用来演示,里面放置的为导出的文件。不包含.svn等,不能进行checkout。project为开发文件目录,可以进行checkout。 chown -R apache.apache  demo chown -R apache.apache  project 2、创建钩子 复制test项目目录下hooks/post-commit.tmpl为hooks/post-commit,并设置权限为777,所属为apache chown -R apache.apache post-commit chmod 777 post-commit 注意:钩子的使用者为apache,所以必须为其分配权限 3、打开钩子脚本post-commit编辑,根据下面的脚本,修改为自己的脚本。 #!/bin/sh # path 项目路径 REPOSPATH=/var/www/svn/test # url 项目地址 REPOSURL=http://localhost/svn/test # SVN 程序路径 SVN=/opt/CollabNet_Subversion/bin/svn RM=/bin/rm # SVNLOOK=/opt/CollabNet_Subversion/bin/svnlook # GREP=/bin/grep # path 演示地址 WEBDEMO=/var/www/html/demo/test/ # path 测试服务器版本checkout路径 WEB=/var/www/html/project/test/ # export LANG=”zh_CN.UTF-8” # update 更新本地版本库 $SVN update $WEB # export 导出干净的文件到demo $RM -rf $WEBDEMO $SVN export $REPOSURL $WEBDEMO –force 注意:各个目录的权限一定要分配好,否则会出现很多问题。 4、CHECKOUT你的项目 在服务器执行 svn co http://localhost/svn/test /var/www/html/project/test 5、恭喜你,在本地电脑checkout并进行更新吧。 大家有什么疑问可以共同探讨,留言或者corrie#sina.com

Comments