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

Composer 的 dry-run 模式可以帮助你在不实际修改项目文件的情况下,预览诸如 update、require、remove 等命令会带来的变更。这在确认依赖更新是否安全、是否会引入破坏性更改时非常有用。
在大多数修改项目的 Composer 命令中,添加 --dry-run 参数后,Composer 会模拟执行过程,输出将要进行的操作,但不会:
vendor/ 目录composer.lock
composer.json(仅对 require/remove)注意:不是所有命令都原生支持 --dry-run,但 update、require、remove 在较新版本的 Composer 中已支持该参数。
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 或安装文件。
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, ...
这样你可以判断是否误删了仍被需要的组件。
使用 -v 或 -vvv 可让 dry-run 输出更详细的依赖解析过程:
composer update monolog/monolog --dry-run -vvv
有助于排查为什么某个包被升级、降级或未更新。
基本上就这些。使用 --dry-run 是保障项目稳定的好习惯,尤其在生产环境变更前进行预演。
以上就是Composer的 "dry-run" 参数如何用于所有修改性命令_安全预览 "update", "require", "remove" 的执行结果的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号