0

0

composer中如何配置项目的GitHub Actions自动更新依赖_composer自动化【指南】

冰火之心

冰火之心

发布时间:2026-01-30 16:35:46

|

542人浏览过

|

来源于php中文网

原创

需配置Dependabot自动更新或自定义GitHub Actions工作流:一、启用Dependabot并配置dependabot.yml实现周更;二、编写update-composer-dependencies.yml定时执行composer update及提交;三、集成composer-require-checker检测未声明依赖;四、在workflow中添加git配置、变更检查、提交与推送步骤。

composer中如何配置项目的github actions自动更新依赖_composer自动化【指南】

如果您希望在 Composer 项目中通过 GitHub Actions 实现依赖的自动更新,需配置工作流以触发依赖检查、版本升级及提交变更。以下是实现此目标的具体步骤:

一、启用 Dependabot 自动更新

Dependabot 是 GitHub 内置的依赖监控服务,可自动检测 composer.json 中过时的包并创建 PR。它不依赖自定义 workflow 文件,但需在仓库中启用并配置 dependabot.yml。

1、在项目根目录下创建 .github/dependabot.yml 文件。

2、写入以下内容:version: 2\nupdates:\n - package-ecosystem: "composer"\n directory: "/" \n schedule:\n interval: "weekly"\n open-pull-requests-limit: 10

3、提交并推送该文件至 main 分支。

二、配置自定义 GitHub Actions 工作流执行 composer update

该方式允许完全控制更新逻辑,例如仅更新 dev-master、跳过特定包、运行测试后再提交,适用于需要精细策略的场景。

1、在 .github/workflows/ 目录下新建 update-composer-dependencies.yml。

2、填入基础 workflow 定义:name: Update Composer Dependencies\non:\n schedule:\n - cron: '0 0 * * 0'\n workflow_dispatch:

3、在 jobs 下添加运行步骤,包含 checkout、setup-php、composer install、composer update --dry-run 验证、实际更新、git 提交等操作。

三、使用 composer-require-checker 配合 Actions 检测未声明依赖

工具可识别代码中使用但未在 composer.json 中声明的包,避免隐式依赖导致 CI 失败或环境不一致,是自动化更新前的重要校验环节。

AIPAI
AIPAI

AI视频创作智能体

下载

1、在项目中执行 composer require --dev maglnet/composer-require-checker 安装检查器。

2、生成默认配置文件vendor/bin/composer-require-checker init,保存为 composer-require-checker.json。

3、在 GitHub Actions 工作流中添加运行命令:vendor/bin/composer-require-checker check --config-file=composer-require-checker.json

四、集成 commit-and-push 步骤实现自动提交更新

在完成 composer update 后,需将 composer.lock 和可能变更的 composer.json 推送至仓库,以便其他流程(如构建、部署)基于最新依赖运行。

1、在 workflow 的 job 步骤中,于 composer update 执行完毕后添加 git 配置命令:git config --local user.email "action@github.com" && git config --local user.name "GitHub Action"

2、执行差异检查:git status --porcelain 判断是否有修改。

3、如有变更,执行 git add composer.json composer.lock && git commit -m "chore(deps): update dependencies via GitHub Actions"

4、使用 git push 推送提交,注意需配置 GITHUB_TOKEN 权限或使用专用 PAT。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
composer是什么插件
composer是什么插件

Composer是一个PHP的依赖管理工具,它可以帮助开发者在PHP项目中管理和安装依赖的库文件。Composer通过一个中央化的存储库来管理所有的依赖库文件,这个存储库包含了各种可用的依赖库的信息和版本信息。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

154

2023.12.25

json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

420

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

536

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

311

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

77

2025.09.10

require的用法
require的用法

require的用法有引入模块、导入类或方法、执行特定任务。想了解更多require的相关内容,可以阅读本专题下面的文章。

466

2023.11.27

github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

1027

2026.01.21

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

724

2023.07.05

C++ 设计模式与软件架构
C++ 设计模式与软件架构

本专题深入讲解 C++ 中的常见设计模式与架构优化,包括单例模式、工厂模式、观察者模式、策略模式、命令模式等,结合实际案例展示如何在 C++ 项目中应用这些模式提升代码可维护性与扩展性。通过案例分析,帮助开发者掌握 如何运用设计模式构建高质量的软件架构,提升系统的灵活性与可扩展性。

8

2026.01.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 10.3万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号