linux下设置SVN钩子 , 自动更新web目录

很多程序员用SVN来进行版本控制 ,把SVN的内容同步到服务器的web目录中 , 需要手动svn update来更新。那如何在客户端提交到SVN后 ,自动更新到web目录呢?

假设web目录已经从SVN中检出,那么我们进入对应的SVN仓库下hooks文件夹:

(Simon安装SVN的时候 , 将仓库设置在了/home/svn/ , 我当前项目为sblog) 

cd /home/svn/sblog/hooks/

接下来新建个配置文件 post-commit

vim post-commit

按 i 进入编辑模式

接着输入下列代码

#!/bin/sh

export LANG=zh_CN.UTF-8 #看下面说明1

SVN=/usr/bin/svn  #这里填写你的svn程序目录

WEB=/usr/share/nginx/sblog/ #这里填写你的web程序目录

$SVN update $WEB --username simon --password 123456 #simon 123456为我的客户端帐号密码 

按ESC退出编辑模式 , 输入:wq 保存并退出vim

设置post-commit执行权限

chmod 777 post-commit

然后kill掉svn进程 重新开启svn

就可以在客户端提交测试了

说明:

1:出现错误标识为svn: Can't convert string from 'UTF-8' to native encoding

如果项目是UTF-8格式 , 客户端提交时报上述错误 , 请在post-commit中加入

export LANG=zh_CN.UTF-8

保存后需重启SVN服务

错误如图

2:如果web目录还没有检出,请使用

svn checkout svn://你的svn地址/xxx  不重命名文件夹,直接在当前目录下检出xxx目录

或者

svn checkout svn://你的svn地址/xxx myweb 检出并且重命名文件夹为myweb

转载: Simon的PHP技术博客 » linux下设置SVN钩子 , 自动更新web目录

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值