是否可以创建将代码放在多个不同目录中的自定义PHP Composer安装程序?我想链接到这样设置的存储库:
/中继线
和作曲家将其提取到
/ myproject的/公共
/ myproject的/文库
/ myproject的/内容
这可能吗?我知道我需要一个自定义安装程序才能执行此操作,但我不确定如何设置安装程序以从repo导出代码并将其放在多个不同的目录中。
答案 0 :(得分:1)
如果仍然考虑测试我的库(基于mnsami
的插件):
https://github.com/ideaconnect/composer-custom-directory
允许自定义路径:
"extra":{
"installer-paths":{
"./monolog/": ["monolog/monolog"]
}
甚至动态名称替换:
"extra": {
"installer-paths": {
"./packages/{$name}": ["sourcepackage/package_A","sourcepackage/package_B","sourcepackage/package_B"]
}
},
带旗帜链:
目前支持的标志是:
F - capitalizes first letter.
P - changes all entries of a _ or - followed by a character to only that character, capitalized.
答案 1 :(得分:0)
您可以创建一个自定义安装程序,负责将软件包安装到这些目录中。您可以使用包上的“type”属性指定要使用的自定义安装程序。自定义安装程序允许您在下载程序包后运行任何PHP代码,因此您可以执行任何您能想到的操作,特别是将不同的文件移动到不同的位置。有关创建自定义安装程序的更多详细信息,请参阅http://getcomposer.org/doc/articles/custom-installers.md
总的来说,虽然我同意人们对你的问题所评论的内容,但你真的不应该这样做。尝试重组您的项目,这样您就不需要这个功能了,您将为自己节省大量的工作。