作曲家和多个分支

F21*_*F21 11 php composer-php

我有一个带有2个分支的git项目:

  • 师父:目前"稳定分支"但遭到改变.发布标记从那里.
  • Devel:下一个版本的开发分支.当我们认为这里的某些功能非常稳定时,它会合并为master.

在master中,我有一个composer.json使用特定版本的要求:

"require" : {
    "triagens/arangodb" : "1.2.1",
    "php" : ">=5.4.0"
},
Run Code Online (Sandbox Code Playgroud)

在我的devel分支中,我想使用依赖项的开发版本:

"require" : {
    "triagens/arangodb" : "dev-devel",
    "php" : ">=5.4.0"
},
Run Code Online (Sandbox Code Playgroud)

实际上,当切换和/ composer installcomposer update运行分支时,我希望让作曲家更新/更改相应版本的依赖关系.

由于composer install --dev不支持具有不同版本的依赖项require-dev,我无法在该require-dev部分中设置不同的版本.

我也不希望composer.json每个分支都没有单独的,因为合并会非常痛苦.

如果您有多个分支,并且每个分支使用某种版本的依赖项,那么最好的方法是什么?

Dav*_*aub 21

您可以使用composer.json不同的名称维护多个版本:

  • composer.master.json
  • composer.dev.json

然后当你打电话composer.phar install或者composer.phar update,你可以使用所需的作曲家文件作为序言:

  • COMPOSER=composer.master.json php composer.phar update
  • COMPOSER=composer.dev.json php composer.phar update

请参阅CLI文档.

  • 这是个聪明的主意!:) (2认同)
  • 我喜欢你的想法,但我想使用:`composer.json` 作为开发的主文件 `composer.dev.json` (2认同)