`
dcj3sjt126com
  • 浏览: 1876829 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

github做webhooks:[2]php版本自动触发更新

阅读更多

上次已经说过了如何在github控制面板做查看url的返回信息了。这次就到了直接贴钩子代码的时候了。

工具/原料

  • git

  • github

方法/步骤

  1.  

    在github的setting里面的webhooks里把我们的url地址填进去。

  2.  

    钩子更新的代码如下:

    error_reporting ( E_ALL );

    $dir = '/data/test/';//该目录为git检出目录

    $handle = popen('cd '.$dir.' && git pull 2>&1','r');

    $read = stream_get_contents($handle);

    printf($read);

    pclose($handle);

    主要代码其实来源PHP手册。

    之所以做输出,是为了在github控制面板能清楚看到在钩子生效钱是都是什么问题。

     
  3. 3

    其实github的webhook提供了很多api接口,主要是供我们记录日志用,如果你们的项目是多人开发,而且很重要,那么就可以利用传递过来的数据(json格式)写日志了。

分享到:
评论

相关推荐

    php-github-client:PHP的Github客户端

    在实际项目中,`php-github-client`可以用于自动化部署、持续集成、版本控制系统集成、代码质量管理等场景。例如,你可以在代码提交后自动触发拉取请求,或者在新问题被创建时发送邮件通知团队。 总结,`...

    github-webhook:Github Webhook 拆分主仓库

    5. **配置Webhooks**:对于每个子仓库,你需要在GitHub上设置Webhook,以便当代码有变动时,能触发自动化流程,如持续集成(CI)、持续部署(CD)或者通知服务。 6. **处理主仓库Webhook**:主仓库的Webhook可能需要...

    richiesuper.github.io:我的个人网站由 GitHub 托管

    - **自动构建**:当仓库的 `gh-pages` 分支或者 `master/main` 分支(对于用户个人页)有更新时,GitHub 自动构建并发布页面。 2. **HTML 基础** - **HTML 结构**:HTML (HyperText Markup Language) 是网站的...

    Laravel开发-github-hook

    "Laravel开发-github-hook"这个主题涉及到的是将Laravel与GitHub的Webhooks功能相结合,以实现持续集成(CI)的自动化流程。GitHub Hooks是GitHub提供的一种服务,它允许用户在特定事件发生时触发自定义的操作,例如当...

    Laravel开发-github-hook .zip

    在本项目中,"Laravel开发-github-hook .zip"显然关注的是使用Laravel框架进行Web应用开发,并结合GitHub的Webhooks功能。Laravel是一款流行的开源PHP框架,它提供了优雅的方式来构建高质量的Web应用程序。而GitHub ...

    ftpActionPhp:使用github通过ftp进行自动化部署

    3. **FTP 自动化部署**: 当在 Github 上对代码库进行修改并提交时,可以通过设置 Webhooks 来触发外部服务,如 FTP 服务器。Webhooks 可以理解为一种事件驱动的通知机制,当特定事件发生(如代码 push)时,会向预定...

    syncmaster

    8. Webhooks:一些服务支持设置Webhooks,当代码仓库发生特定事件(如提交、合并)时,可以触发其他服务(如自动化测试或部署)执行相应操作。 综上所述,"syncmaster"可能是一个综合了上述部分或全部功能的工具,...

    test:测试Webhooks

    6. **异步处理**:由于Webhook触发的事件可能需要执行耗时的操作,如数据库操作或第三方API调用,因此推荐使用异步处理,如队列或者后台任务,避免阻塞主线程。 7. **测试Webhooks**:测试Webhooks通常需要模拟发送...

    软件包:通过将Webhook集成到GitHub和GitLab来增强Composer Satis

    配套 源代码存储库管理变得简单。 软件包是一个PHP 5.6和7.x应用程序,提供了用于维护... 每次推送代码,程序包都可以触发许多自动化任务,例如文档生成或代码分析。 基于事件的简单体系结构允许轻松创建新的自动化任

    php_deploy:用于自动项目部署的 SamsonPHP 模块

    自动部署能够帮助开发者快速、准确地将代码更新推送到生产环境,避免手动操作可能带来的风险,如误操作、版本混乱等。它确保了代码的一致性和可重复性,使得团队协作更加高效。 ### 2. SamsonPHP部署系统简介 ...

    git-push-deploy:GitHub和GitLab项目的简单自动CICD管道

    适用于Git项目的简单自动化CI / CD管道此Git-Push-Deploy解决方案可将Git应用程序源中的更新直接自动传送到云。 该软件包可以作为Java , PHP , Ruby , Node.js , Python和Go项目的附件应用,可以在。 工作流程取...

    Laravel开发-gitlab

    6. **集成GitLab Webhooks**:在Laravel应用中,可以利用GitLab的Webhooks功能,当GitLab中的事件(如推送、合并请求)触发时,通知Laravel应用进行相应操作,如清空缓存或重建索引。 **GitLab的其他优势** 1. **...

    github-webhook

    【GitHub Webhook】是GitHub平台提供的一种实时通信机制,它允许开发者在仓库发生特定事件时自动触发接收端的HTTP回调,从而实现自动化的工作流程。在PHP中,我们可以利用Webhook来构建各种自动化服务,例如自动部署...

    在Laravel应用程序中接收Webhook

    这个库可以从GitHub上获取,对应的版本是`spatie-laravel-webhook-client-5cb7b0e`。 1. **安装库** 使用Composer来安装`spatie/laravel-webhook-client`库: ``` composer require spatie/laravel-webhook-...

    laravel-sns-events:使用Laravel Events处理来自AWS SNS的事件

    Laravel SNS活动 Laravel SNS Events允许您通过Laravel Events收听SNS Webhooks。 它利用了一个控制器,该控制器可以正确侦听SNS HTTP Web钩子并触发您可以在Laravel中侦听的事件。 如果您不熟悉Laravel事件和侦听器...

    heroku-app

    为了实现自动化的部署,你可以集成Heroku与GitHub、Bitbucket或其他代码托管服务的Webhooks,当代码提交时自动触发部署。此外,Heroku还可以配合Jenkins、CircleCI等CI/CD工具进行更复杂的构建和测试流程。 **7. ...

Global site tag (gtag.js) - Google Analytics