与
ESC
输入关键词搜索文章

svn使用钩子Hooks的post-commit更新同步

全文约 314 字预计阅读 2 分钟
常见问题 修改完代码提交到SVN服务器后,同步到WEB服务器。需要配置SVN的钩子,打开对应项目下hooks目录, 可以看到有一个post-commit.tmpl文件,这是一个模板文件, 复制一份放在此目录下,命名为post-commit 里面原有的代码全部注释掉.这里可以执行shell命令,每次commit完成后都会调用此文件. 我的文件内容为 #!/bin/sh for dir in `/usr/local/svn/bin/svnlook dirs-changed /data/svn/mall/` do /usr/local/svn/bin/svn update -N /data/htdocs/mall/$dir done #export LANG=zh_CN.UTF-8 #/usr/local/svn/bin/svn checkout --username admin --password xxx svn://127.0.0.1/mall/ /data/htdocs/mall/ 说明: #!/bin/sh 说明是执行shell命令 export LANG=zh_CN.UTF-8根据代码文件编码而定 用svnlook dirs-changed监控变化的文件夹逐个输出更新,也可以一次svn checkout全部检出,如果项目目录比较大可以考虑逐个更新。 希望只检出顶级目录被选中,使用-N选项。 如果是svn好web是同一台机器就这样已经搞定了,如果是分布式多台web前端,还是需要通过其它软件或命令进行同步更新,如rsync。
svn使用钩子Hooks的post-commit更新同步
分享

发表评论

评论 0 条

暂无评论,来说点什么吧。