Composer的 "dry-run" 参数如何用于所有修改性命令_安全预览 "update", "require", "remove" 的执行结果

穿越時空
发布: 2025-12-16 13:32:04
原创
299人浏览过
使用 --dry-run 参数可预览 Composer 命令变更而不实际执行:1. composer update --dry-run 显示将升级、移除或安装的包;2. composer require --dry-run 预览新增依赖及其依赖树;3. composer remove --dry-run 检查删除包时的影响;结合 -v 可查看详细解析过程,确保变更安全。

composer的 \

Composer 的 dry-run 模式可以帮助你在不实际修改项目文件的情况下,预览诸如 updaterequireremove 等命令会带来的变更。这在确认依赖更新是否安全、是否会引入破坏性更改时非常有用。

如何使用 --dry-run 参数

在大多数修改项目的 Composer 命令中,添加 --dry-run 参数后,Composer 会模拟执行过程,输出将要进行的操作,但不会:

  • 下载或安装任何包
  • 修改 vendor/ 目录
  • 更新 composer.lock
  • 修改 composer.json(仅对 require/remove)

注意:不是所有命令都原生支持 --dry-run,但 update、require、remove 在较新版本的 Composer 中已支持该参数。

各命令的 dry-run 使用示例

1. composer update --dry-run
查看运行更新后会升级哪些包:

composer update --dry-run
登录后复制

输出示例:

Loading composer repositories with package information
Updating dependencies
Lock file operations:
  - Upgrade monolog/monolog (2.3.0 => 2.4.0)
  - Remove symfony/debug (v4.4.0)
  - Install symfony/error-handler (v5.4.0)
Writing lock file
Generating autoload files
登录后复制

以上操作不会真正执行,lock 文件和 vendor 不会被改动。

2. composer require --dry-run
预览添加新依赖的影响:

composer require doctrine/orm --dry-run
登录后复制

你会看到将要安装的包及其依赖树,Composer 也会提示是否存在版本冲突风险,而不会实际写入 composer.json 或安装文件。

AletheaAI
AletheaAI

世界上第一个从自然语言描述中生成交互式 AI 角色的多模态 AI 系统。

AletheaAI 83
查看详情 AletheaAI

3. composer remove --dry-run
检查删除某个包会发生什么:

composer remove phpunit/phpunit --dry-run
登录后复制

输出可能包括:

Removing package phpunit/phpunit and its dependencies
Dependencies to remove: sebastian/diff, phpunit/php-code-coverage, ...
登录后复制

这样你可以判断是否误删了仍被需要的组件。

结合 --verbose 获取更详细信息

使用 -v-vvv 可让 dry-run 输出更详细的依赖解析过程:

composer update monolog/monolog --dry-run -vvv
登录后复制

有助于排查为什么某个包被升级、降级或未更新。

基本上就这些。使用 --dry-run 是保障项目稳定的好习惯,尤其在生产环境变更前进行预演。

以上就是Composer的 "dry-run" 参数如何用于所有修改性命令_安全预览 "update", "require", "remove" 的执行结果的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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