Linux下svn文件提交后自动同步更新到网站目录

来源:互联网 发布:软文发布系统源码 编辑:程序博客网 时间:2024/06/06 04:49

本文记录通过svn的钩子脚本实现本地提交svn后,自动同步代码文件到服务器的网站目录下,而不必手动同步。

假如现在有:

SVN版本库中的一个项目:/home/svn/tcyg
网站目录:/home/www/
我们先将SVN版本库中的一个项目checkout到网站目录:

svn co file:///home/svn/tcyg/ /home/www/

这时,网站目录已成为SVN的工作副本,接下来利用SVN的钩子让这个工作副本自动更新。

新建一个post-commit钩子:(The post-commit hook is invoked after a commit.)

vim /home/svn/tcyg/hooks/post-commit

添加以下代码:

#!/bin/shREPOS="$1"REV="$2"export LANG="zh_CN.UTF-8"    #防止乱码 svn update /home/www/ --username Hwei --password 123456 --no-auth-cache #设置登陆账号密码并不缓存

注:不要遗漏第一行的#!/bin/sh,否则post-commit会报代号255的错误。
保存后,修改文件权限为755,否则SVN无法调用执行:

chmod 755 /home/svn/tcyg/hooks/post-commitOR:chmod +x /home/svn/tcyg/hooks/post-commit

OK,至此,就完成了svn文件提交后自动同步更新到网站目录的代码了。

0 0
原创粉丝点击