为了账号安全,请及时绑定邮箱和手机立即绑定

svn钩子自动更新代码到代码库

标签:
PHP
svn钩子自动更新代码到代码库

例子:服务器svn路径 /opt/svn/zixun/

第一步添加用户和密码

/opt/svn/zixun/conf/authz 文件中添加用户

格式: 用户 = rw(读写权限)

/opt/svn/zixun/conf/authz 文件中添加用户密码

格式:用户 = 123456(密码)

第二步钩子文件操作

进入钩子目录:

1. cd /opt/svn/zixun/hooks/post-commit

创建钩子文件post-commit并备份文件

2. cp post-commit.tmpl post-commit

3. 钩子post-commit文件内容创建 通过vim post-commit

把一下内容根据自己实际需求写入post-commit文件

export LANG=zh_CN.UTF-8

(这句话比较重要,如果客户端跟服务器编码不一样会出现同步失败)

SVN_PATH=/usr/bin/svn

代表你的svn服务文件地址 如果是通过yum安装的话,或者已经注册了svn服务,则可以直接使用svn,不需要输入全路径)

WEB_PATH=/usr/local/xxx/xxx

你的web目录(将要同步过去的web项目路径)

LOG_PATH=/tmp/svn_update.log

同步代码记录日志

echo whoami,$REPOS,$REV >> $LOG_PATH

$SVN_PATH update --username colin --password colin88 $WEB_PATH --no-auth-cache >> $LOG_PATH

4. 设置脚本所属用户组,www为web服务运行账户和组

chown www:www post-commit

5.添加脚本执行权限

chmod +x post-commit

第三步重启svn

开启svn服务

先kill掉svn ps -ef|grep svn

根据查到的进程号直接删除

启动svn svnserve -d -r /opt/svn/

第四步 初始化服务器代码库

1. 进入空白代码库路径

cd /usr/local/xxx/xxx

2.初始化代码

svn checkout http://192.168.1.1/svn/
(之后所有通过svn提交到服务器的代码都会自动更新到指定的代码路径)

(完成)

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消