Git----使用WebHook实现代码自动部署

  起因: 经常本地push到gitee等线上代码仓库,然后登陆服务器在进行pull,很麻烦,想偷懒怎么办?使用git的webhook实现!

1.实现原理

  1.1本地提交推送

  1.2线上仓库监听push动作,也就是webhook,回调url触发服务器的pull操作

  1.3服务器pull操作

2.实现步骤

  2.1本地和服务器安装git(略过)

  2.2码云进入项目->管理->webhook设置,(其他原理一样 git,coding)

  url就是你服务器上可以访问的地址, 该地址是进行pull命令的文件,可以是php,python,node等等等,勾选push就是当push动作的时候触发这个url,访问服务器进行pull操作,勾选其他的就是其他的动作,这里不做解释. 添加后,会有测试按钮,建议代码写上测试一下

1 shell_exec('ls')

  如果返回文件目录,则表示该权限可以执行,服务器是LNMP, 然后只需要一行代码(我的需求就是自动拉取,所有不做深入的操作,比如验证,日志,分类什么的可以自己补充)通过代码可以查看回调的信息,根据信息进行操作

$request = json_decode(file_get_contents('php://input'), true)

  拉取动作

echo shell_exec('cd your_path && git pull')

3.一些坑

  如果不成功,建议 LL 命令查看一下用户权限 一般PHP是www-data用户, 使用
sudo chown -R :www-data your_path
sudo chmod -R g+w  your_path
  主要是权限问题,这样应该可以啦! 路由什么的自己去搞定啦! 接下来就可以开心的本地push服务器自己去pull啦~哈哈哈

 

转载于:https://www.cnblogs.com/leedom/p/9510973.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值