Composer update --with-dependencies 同时更新依赖的依赖【方法】
发布时间 - 2026-02-01 00:00:00 点击率:次composer update --with-dependencies 已被彻底移除,因语义模糊且与默认行为重叠;应改用 --with 或 --with-all-dependencies 精确控制范围,或直接使用 composer update 默认递归更新整棵树。
composer update --with-dependencies 早已被移除
这个命令在 Composer 2.2+ 中已彻底废弃,执行会直接报错:Unrecognized option: --with-dependencies。它不是“暂时不推荐”,而是被明确删除——因为语义模糊、行为不可控,且和 composer update 默认行为重叠严重。
替代方案:用 --with 和 --with-all-dependencies 精确控制范围
Composer 2.2 起引入了更清晰的依赖更新粒度控制:
-
--with vendor/package:只把指定包及其**直接依赖**(即 composer.json 里声明的依赖)纳入更新范围,不递归向下 -
--with-all-dependencies:把指定包 + 它所有层级的依赖(包括子依赖的子依赖)全部加入更新候选集 - 两者可组合使用,例如:
composer
update monolog/monolog --with-all-dependencies
注意:--with-all-dependencies 不等于“全量更新”,它仍只作用于你显式列出的包及其依赖树,不会动其他未提及的包。
为什么不能无脑 --with-all-dependencies?
看似方便,实则风险集中:
- 可能意外升级一个底层包(如
symfony/polyfill),导致某个间接依赖的运行时行为变化 - 多个主包共用同一底层依赖时,
--with-all-dependencies可能因版本约束冲突而失败,报错类似:Conclusion: don't install symfony/console v5.4.39 - CI 环境中难以复现,因为 lock 文件变动比预期大,diff 难以审查
真正需要“连带更新依赖的依赖”时,优先考虑:composer update vendor/package --with-all-dependencies --dry-run 先看影响范围。
想安全更新整个依赖树?别绕弯,就用默认行为
如果你本意是“让所有依赖都升到满足约束的最新版”,最简单也最可靠的方式就是:
- 删掉
composer.lock(谨慎!仅限本地验证) - 或直接运行:
composer update—— 它默认已递归解析并更新整棵树,只要版本约束允许 - 若只想更新某类包(如只更新 dev 依赖),用:
composer update --dev
所谓“依赖的依赖”,从来不在 Composer 的更新逻辑之外;它只是你没意识到,默认就已经在做了。
# js
# json
# composer
# 为什么
# symfony
# 递归
# console
# 报错
# 移除
# 棵树
# 如果你
# 多个
# 已被
# 意识到
# 只想
# 你没
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何获取PHP WAP自助建站系统源码?
android nfc常用标签读取总结
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
Laravel如何实现API速率限制?(Rate Limiting教程)
PHP 500报错的快速解决方法
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
如何在万网自助建站平台快速创建网站?
Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】
laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程
如何用JavaScript实现文本编辑器_光标和选区怎么处理
javascript日期怎么处理_如何格式化输出
iOS正则表达式验证手机号、邮箱、身份证号等
Laravel如何为API生成Swagger或OpenAPI文档
html5的keygen标签为什么废弃_替代方案说明【解答】
🚀拖拽式CMS建站能否实现高效与个性化并存?
新三国志曹操传主线渭水交兵攻略
HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
Laravel如何使用Passport实现OAuth2?(完整配置步骤)
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
网站制作壁纸教程视频,电脑壁纸网站?
laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
如何用PHP工具快速搭建高效网站?
如何用VPS主机快速搭建个人网站?
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
Android okhttputils现在进度显示实例代码
高性价比服务器租赁——企业级配置与24小时运维服务
JS去除重复并统计数量的实现方法
,南京靠谱的征婚网站?
绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信
iOS验证手机号的正则表达式
Laravel怎么在Controller之外的地方验证数据
Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】
如何基于云服务器快速搭建个人网站?
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
利用 Google AI 进行 YouTube 视频 SEO 描述优化
JavaScript中的标签模板是什么_它如何扩展字符串功能
zabbix利用python脚本发送报警邮件的方法
Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册
如何自定义建站之星网站的导航菜单样式?
Laravel如何实现文件上传和存储?(本地与S3配置)
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
Laravel如何集成Inertia.js与Vue/React?(安装配置)
怎样使用JSON进行数据交换_它有什么限制
Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧
JS经典正则表达式笔试题汇总


