通过SVN进行版本库管理,每次提交后,都要在SVN服务器更新最新上传的版本到WEB目录进行同步。操作比较烦琐,而且效率也低。使用SVN钩子脚本进行WEB目录同步,可很好的解决这方面的问题。由于测试机器与SVN库都在同一台机器里,所以处理起来比较方便。
svn项目下面有hooks目录,里面存放的是全部的钩子脚本的模板 post-commit.tmpl 为客户端commit提交后触发 以下是windows和linux下自动更新版本库的方法: 在SVN 项目版本库的存储目录下的hooks 目录,新建立一个post-commit.bat 文件:
注意:以上方法必须把SVN服务器安装目录下的bin加入到path路径(环境变量)中。SVN通过setup进行安装,默认会将bin目录增加到path路径中,如果通过压缩包进行安装,必须要手动增加。 要想知道此脚本是否出错,可在cmd命令行里输入:C:\Documents and Settings\Administrator>e:/svn/hooks/post-commit.bat 进行测试。出现以下信息则表明脚本成功执行:
C:\Documents and Settings\Administrator>e:/svn/hooks/post-commit.bat 红色部分是版本库的位置,大家按实际位置进行修改。 以后不管那台机器,只能通过svn commit命令,都会触发此脚本,自动同步web目录中。
linux: linux下原理跟windows是一样的。只是新建的文件名不一样。 在SVN 项目版本库的存储目录下的hooks 目录,新建立一个post-commit文件:
增加以下代码: (责任编辑:IT) |