Fork me on Baidu

服务器自动代码同步--个人博客项目

1,这个是我个人的博客 服务器也是自己的 所以就比较随便了
代码的同步  1,可以使用webhook 进行代码同步  不过我配置了很长时间 烦的要死 没成功,2,可以走服务器的计划任务 进行代码同步
不过 我选了最费劲的。
最近接触了 workerman 框架 然后使用的里面的定时器去定时拉取 代码。好了废话不说了 
2,在服务器  /var/www 下面下载框架的东西 composer require workerman/workerman下载好之后 这就是一个简单的框架的内容了
3,然后在项目的根目录 创建 类似文件 ll 可以看到有 start.php 文件 我们创建一个文件  mstart.php   touch mstart.php
代码复制过来之后 就好了
<?php
use \Workerman\Worker;
use \Workerman\Timer;
require_once __DIR__ . '/vendor/autoload.php';
$task = new Worker();
$task->name='拉取代码定时器';
task>onWorkerStart=function(task)

  //博客园的bug   写一个 $$ 符号不显示 写两个就显示了两个 兄弟们复制的时候 再去掉就好了  就这一行有毛病 别的都没有

{
// 每30秒执行一次
$time_interval = 30;
Timer::add($time_interval, function()
{
//仓库地址
$remote = '你的仓库地址';
$local = '你的项目地址';
echo shell_exec("cd {$local} && git pull {$remote} 2>&1");
});
};
// 运行worker
Worker::runAll();

 

 

还要运行php mstart.php start -d   
-d 指的是在后台运行  start 就是开始喽   诶呀 自己的服务器 消耗点资源 反正闲着也是闲着 
4,记得放开php.ini 中的 禁用函数限制  删除 shell_exec 之后重启php-fpm 
分支的话 有主分支 master 和 develop 分支 命令的话你可以再去进行修改 
哎 最近想说话  博客就写的累赘了些。886~~
当然啦 如果是公司的服务器的话 还是选择webhook 比较好

 

posted @   consideration  阅读(98)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示