我正在开发一个包含多个模块(如模块A和模块B)的项目(我们称之为应用程序A)。这些模块在这个项目中使用,但我也希望这些模块可以暴露给其他项目(例如,应用程序B可以使用模块A)。主项目Application A位于SVN仓库中,具有以下(简化)目录结构:作曲家:SVN仓库中的多个软件包
trunk/
module/
moduleA/
src/
composer.json -> Composer file for module A
moduleB/
src/
composer.json -> Composer file for module B
composer.json -> Composer file for Application A
我正在使用composer来管理依赖关系。我想使用Satis创建一个包含我的模块包(模块A,模块B等)的私有存储库。我说我的SVN仓库的存储库,以我的赛帝配置文件:
"repositories": [
{
"type": "vcs",
"url": "svn://xxx/ApplicationA/"
}
]
但这并不产生packages.json
像我想要的。 packages.json
文件中唯一的软件包是应用程序A,但我希望所有模块软件包都在此文件中,因此我希望Composer/Satis扫描所有composer.json
文件(也位于子文件夹中)。
我可以为每个包添加一个特定的存储库,但我不想这样做,因为在那种情况下,我需要为每个新模块编辑我的Satis配置。
我尝试了很多事情就像我的赛帝配置文件设置trunk-path
,branches-path
,tags-path
和package-path
,但我能得到这个工作。
总之:我试图让Composer/Satis在1个SVN仓库中使用多个软件包。有谁知道如何做到这一点?或者,也许有更好的方法来解决我的'问题'?
在此先感谢!
对不起,迟到的回应,由于其他项目这个问题有一个较低的优先级。感谢您的回答@timmow。我已经看过packagist,我想用它是最好的选择。我会试一试! –