博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
最简单的git部署方案
阅读量:6849 次
发布时间:2019-06-26

本文共 717 字,大约阅读时间需要 2 分钟。

  hot3.png

本地提交代码 到 git仓库以后  网站 远程自动同步代码 。

git 的 webhook  正好能 满足 这个需求。

服务器端:

服务器端php程序是以www用户来执行,之前设置的ssh密钥是以root用户来设置的,php以www用户执行脚本中的git pull 命令时就没有权限

//以www用户的身份生成秘钥sudo -u www ssh-keygen -t rsa -C “jianl@example.com”

将生成的 id_rsa.pub 内容复制到github 的公钥设置里。

创建文件放入网站根目录下

password == 'password'){ echo shell_exec("/usr/local/git/bin/git pull 2>&1"); exit(); } //echo shell_exec("cd {$path} && /usr/bin/git reset --hard origin/master && /usr/bin/git clean -f && /usr/bin/git pull 2>&1");http_response_code(200);?>

去github置webhook

完全以上配置 。服务器端自动同步代码的功能就能够实现了。

缺点:php有执行shell的权限不安全,在安全模式下无法使用此函数。

服务器数据库再开启远程连接,本地连接服务器数据库进行开发十分方便。

相关链接:http://my.oschina.net/dhyana/blog/738028

转载于:https://my.oschina.net/dhyana/blog/727504

你可能感兴趣的文章