evozon-php / composer-utilities
Composer 工具
v2.0
2019-08-08 13:18 UTC
Requires
- php: >=7.1
- composer-plugin-api: ^1.1
- symfony/console: ^4.0
- symfony/filesystem: ^4.0
- symfony/property-access: ^4.0
- symfony/yaml: ^4.0
This package is auto-updated.
Last update: 2024-09-09 00:00:32 UTC
README
针对各种用例的不同 Composer 工具。
安装
composer require evozon-php/composer-utilities --dev
同步 composer.json
在处理单体仓库时,您可能拥有不同的 .json
文件。
在这种情况下,可能有一个用于开发的 .json
文件(例如 dev.json
),它从本地仓库安装,也可能包含不同的版本。另一个 .json
文件(例如 composer.json
)将用于从远程仓库安装软件包,并可能是稳定版本。
将以下内容添加到您的源 .json
文件中
{
"config": {
"composer-utilities": {
"sync": {
"ignore": {
"nodes": [
"[require][vendorAbc/packageAbc]",
"[require][vendorXyz/bundleXyz]",
"[repositories]"
]
}
}
}
}
}
您需要做的就是定义在同步期间要忽略的节点。请确保您以 PropertyAccess 格式定义它们。
插件将自动挂载到 post-install-cmd
和 post-update-cmd
事件,并询问您是否要同步。
这仅适用于您明确使用自定义 .json
文件时
COMPOSER=dev.json composer install
当您想手动触发同步过程时,还添加了一个自定义命令
composer sync:json --source dev.json --target composer.json
强制更新参数
当 parameters.yml.dist
中的某些参数发生变化,但更新它们 parameters.yml
很繁琐时很有用。通常情况下,数组的参数会是这样。
将以下内容添加到您的 composer.json
文件中
{
"config": {
"composer-utilities": {
"parameters-update": {
"file": "app/config/parameters.yml",
"dist-file": "app/config/parameters.yml.dist",
"parameters": [
"foo",
"bar"
]
}
}
}
}
插件将自动挂载到 post-install-cmd
和 post-update-cmd
事件,并询问您是否要更新参数。
composer install
// or
composer update
当您想手动触发参数更新过程时,还添加了一个自定义命令
composer parameters:update --source app/config/parameters.yml.dist --target app/config/parameters.yml