当前位置:首页 > linux教程 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2015-04-21 10:38:30 浏览: 评论:0 

有时,对于多文件需要上传到服务器的时候将会很麻烦,但是如果使用svn的钩子脚本就容易实现本地提交svn后,自动同步代码文件到远程服务器的网站目录下,而不必手动上传了.

首先在网站目录下checkout代码,例如我的目录是/data/www/test

svn co https://127.0.0.1/test/trunk/ /data/www/test/

注意,这是因为有时我会在服务器上直接修改代码,所以用checkout,如果不需要,可以用export,此指令不带.svn版本文件.

迁出代码后,就需要建立钩子脚本了,我的版本库放置在/data/svn/test/下,新建一个post-commit脚本,添加如下内容:

  1. #!/bin/sh 
  2. REPOS="$1" 
  3. REV="$2" 
  4. --phpfensi.com 
  5. export LANG=zh_CN.UTF-8 #字符集,与服务器一致,可执行locale命令查看 
  6. svn update /data/www/test/   #更新svn 
  7. echo `date`,`whoami`,$REPOS,$REV >> /data/svn/test/hooks/svn_hook.log  #记录时间日志 
  8. chown -R web:web /data/www/test #将网站目录文件更改属主,如果你是使用root用户更新的话 

给予脚本执行命令:chmod +x /data/svn/test/hooks/post-commit

至此,就完成了svn提交自动更新同步代码了.

Tags: svn提交文件 Linux同步更新

分享到: