Composer,如何仅升级开发依赖项

问题描述 投票:0回答:1

有没有办法只升级

require-dev
包而不升级
require
包?

在composer.json中,我更改了几个

require-dev
包,但我不希望其他非开发包及其依赖项更改其锁定版本。

我在文档中找不到任何内容。我能想到的唯一解决方案是更改composer.json中的版本并启动

composer update <list of all updated packages>
,但是如果您像我一样有很多依赖项需要升级,那就有点乏味了。

php composer-php
1个回答
0
投票

Composer 不直接提供此选项,但您可以编写其他命令来获取直接开发依赖项列表。

你可以试试这个:

composer update $(composer show --name-only -D | grep -E -v "$(composer show --no-dev --name-only -D | paste -sd '|' -)")

composer show --name-only -D
- 列出所有直接依赖项的名称

composer show --no-dev --name-only -D | paste -sd '|' -)
- 获取除开发之外的所有直接依赖项的名称,并转换要由
composer update
方法执行的字符串。

© www.soinside.com 2019 - 2024. All rights reserved.