bkief29 / pcomposer
一个Composer插件,提供在系统间共享和复用包的能力。
1.0
2022-05-17 18:53 UTC
Requires
- php: >=5.3
- composer-plugin-api: ^2.0
Requires (Dev)
- composer/composer: ^2.3
This package is auto-updated.
Last update: 2024-09-29 05:43:21 UTC
README
基于pnpm的理念,减少和复用共享包。
安装
composer global require bkief29/pcomposer
设置
修改 ~/.composer/config.json 文件,包括以下内容
将
%MY_USER%
替换为您的用户名,或者指定一个自定义的vendor-dir
路径
{ "config": { "allow-plugins": { "bkief29/pcomposer": true }, "extra" : { "shared-package": { "vendor-dir": "/Users/%MY_USER%/.composer/pcomposer", "symlink-dir": "vendor", "symlink-enabled": true, "package-list": [ "*" ] } } } }
选项
排除要被符号链接的包
在您的项目的 composer.json 文件中
"config": { "extra" : { "pcomposer": { "exclude": [ "spatie/data-transfer-object" ] } } },
额外
将所有项目迁移到 pcomposer
用法:
pcomposer ~/projects
function pcomposer() { find $1 -type d \( -name "vendor" \) -maxdepth 2 -print0 | while read -d $'\0' file do echo "$file" cd "$file/../" && composer install done }