如何使用 composer outdated 命令检查哪些依赖包有新版本?
发布时间 - 2025-12-14 00:00:00 点击率:次composer outdated 用于列出项目中可更新的依赖包,包括直接和间接依赖,默认仅显示满足版本约束的更新,支持 --direct、--all 等选项控制输出范围。
直接运行 composer outdated 就能列出当前项目中所有有更新版本的依赖包,包括直接依赖和间接依赖(即 require 和 require-dev 中声明的包及其子依赖)。
基础用法:查看可更新的包
在项目根目录下执行:
composer outdated
默认只显示有新版本且满足当前 composer.json 版本约束(如 ^2.0)的包。比如你锁定了 "monolog/monolog": "^2.0",而最新稳定版是 2.10.0,它就会出现在列表里;但如果最新版是 3.0.0,不满足 ^2.0 范围,就不会显示(除非加 --all)。
常用选项增强实用性
-
--direct:只检查你在composer.json中直接声明的包(忽略 transitive 依赖),适合快速聚焦自己管理的依赖 -
--outdated:这是
默认行为,可省略;加上 --up-to-date则反向显示已是最新的包(较少用) -
--minor-only或--patch-only:限制只显示次要版本或补丁版本更新(例如只关心2.1.x → 2.2.x,不显示2.2.x → 3.0.x) -
--all:显示所有包,包括那些因版本约束被锁定、无法升级的(会标灰或注明“not upgradable”)
识别输出信息的关键列
命令输出通常包含四列:
-
包名(如
phpunit/phpunit) -
当前安装版本(来自
composer.lock,如9.5.26) -
最新可用版本(满足约束的最高兼容版,如
9.6.15) -
版本差异说明(如
9.5.26 → 9.6.15,或标为dev-main表示有开发分支更新)
带 [dev] 标记的行表示该更新来自开发分支(如 dev-main),不是稳定版,需谨慎对待。
配合更新操作更高效
看到想升级的包后,不要直接全量更新。推荐按需升级:
- 升级单个包:
composer update vendor/package-name - 升级一组相关包:
composer update monolog/* symfony/* - 确认变更再执行:
composer update --dry-run先预览会修改哪些包和版本
升级前建议先提交当前代码,避免 composer.lock 变更引发意外问题。
基本上就这些。记住 outdated 是诊断工具,不是升级命令——它帮你看见“有什么可升”,下一步怎么升,还得自己决定。
# php
# js
# json
# composer
# 工具
# ai
# symfony
# date
# require
# 只显示
# 稳定版
# 这是
# 有什么
# 就会
# 就能
# 出现在
# 你在
# 帮你
# 已是
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
什么是javascript作用域_全局和局部作用域有什么区别?
,交易猫的商品怎么发布到网站上去?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
如何快速生成可下载的建站源码工具?
Laravel如何处理文件下载请求?(Response示例)
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
电商网站制作价格怎么算,网上拍卖流程以及规则?
详解vue.js组件化开发实践
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
打造顶配客厅影院,这份100寸电视推荐名单请查收
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
Linux系统命令中screen命令详解
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
Laravel如何实现API速率限制?(Rate Limiting教程)
JavaScript如何操作视频_媒体API怎么控制播放
昵图网官方站入口 昵图网素材图库官网入口
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
Laravel如何配置Horizon来管理队列?(安装和使用)
今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】
如何在IIS中新建站点并配置端口与IP地址?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】
Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】
如何在阿里云通过域名搭建网站?
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环
Mybatis 中的insertOrUpdate操作
Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
北京专业网站制作设计师招聘,北京白云观官方网站?
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
js实现点击每个li节点,都弹出其文本值及修改
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
Laravel API资源类怎么用_Laravel API Resource数据转换
Python结构化数据采集_字段抽取解析【教程】
制作旅游网站html,怎样注册旅游网站?
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
Linux后台任务运行方法_nohup与&使用技巧【技巧】
php485函数参数是什么意思_php485各参数详细说明【介绍】
专业商城网站制作公司有哪些,pi商城官网是哪个?
公司网站制作价格怎么算,公司办个官网需要多少钱?
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?


默认行为,可省略;加上