优化多个Composer VCS存储库路径

时间:2015-11-11 15:26:37

标签: composer-php

我有一些包含这样的部分的composer.json文件:

"repositories": [
    {
        "type": "vcs",
        "url": "http://svn.example.com/libs/",
        "package-path": "Package1"
    },
    {
        "type": "vcs",
        "url": "http://svn.example.com/libs/",
        "package-path": "Package2"
    },
    {
        "type": "vcs",
        "url": "http://svn.example.com/libs/",
        "package-path": "Package3"
    }
],

"require": {
    "ident/Package1": "~2.0",
    "ident/Package2": "~3.0",
    "ident/Package3": "~1.0"
}

也就是说,各个软件包位于Subversion中../trunk目录下的子目录中,而不是使用标准./[trunk,tags,branches]排列的自己的项目目录。

有没有办法优化这个composer.json,以便在只有type更改时不必重复VCS urlpackage-path值?假设我无法更改Subversion目录布局,但几乎任何其他内容都是可能的。

1 个答案:

答案 0 :(得分:2)

我想不出一种优化方法。

优化的真正潜力是完全不同的水平:添加私有存储库的方式要求您始终将它们中的每一个添加到根composer.json文件中,即使这些包不是直接包含在那里也是如此。

这是很多维护工作。如果您可以使用Satis创建本地软件包存储库并且只在任何地方添加此单个信息,那会更好。使用Satis,您只需添加一次私有存储库 - 然后重复URL是否真的无关紧要。添加新软件包只能在Satis配置中完成一次,然后随处可用。

相关问题