(git)Bitbucket使用WebHook实现自动部署PHP代码

(git)Bitbucket使用WebHook实现自动部署PHP代码

第一篇文章……以后应该还有……之前总是看别人的博客,自己本地也写,看见比较好的就私藏下来,
今天开始动手写一些自己的blog……

一. 工作场景

团队使用bitbucket控制,PHP框架为TP,现在需要利用webhook实现php代码的自动部署。

二. 实现原理

简单的讲,就是在Bitbucket远端设置仓库被push的触发事件。说白了,就是远端仓库被push时,会请求你自己设定的URL,在URL的PHP代码中实现类似shell_exec(‘git pull’)

三. 实现步骤

   1.在服务器端生成 网站执行用户(一般是www或apache,可以在服务端配置文件中查看该用户)的公钥,
     将公钥粘贴到远端的bitbucket. 
   ***注意:假如你现在的网站根目录的用户是root,并且git的连接也是root账户配置……两条路可选:
           一:把网站根目录的用户改为当前网站执行用户,并且用该用户重新连接bitbucket一遍,
               之前git不受影响
           二:如果你就想按老男孩的 网站根目录:root:755 文件:root:640 ,可以visudo提升
               权限,但是小生在此遇到php 执行sudo命令的问题,希望有成功的猿友们留言***

   2.在远端bitbucket设置选项中打开WebHook,加入你想要触发的URL,并选择PUSH触发事件

   3.在上一步的URL的代码中 重点实现 shell_exec("cd $dir&&git pull origin master")

   4.完成

猜你喜欢

转载自blog.csdn.net/wszxs1990/article/details/52641557