У меня есть проект git с двумя филиалами:
В master у меня есть требование в моем composer.json
которое использует определенную версию:
"require" : { "triagens/arangodb" : "1.2.1", "php" : ">=5.4.0" },
В моей ветке разработки я хотел бы использовать версию разработки зависимостей:
"require" : { "triagens/arangodb" : "dev-devel", "php" : ">=5.4.0" },
Эффективно, когда ветви переключаются, и выполняется composer install
или composer update
я хотел бы, чтобы композитор обновлял / изменял зависимости к соответствующим версиям.
Поскольку composer install --dev
не поддерживает другую версию зависимостей в require-dev
, я не могу установить другую версию в разделе require-dev
.
Я также предпочел бы, чтобы у каждого филиала не было отдельного composer.json
поскольку слияние было бы довольно болезненным.
Если у вас есть несколько ветвей, и каждая ветвь использует некоторую версию зависимости, что лучший способ сделать это?
Вы можете поддерживать несколько версий composer.json
под разными именами:
composer.master.json
composer.dev.json
Затем, когда вы вызываете composer.phar update
composer.phar install
или composer.phar update
, вы можете предисловие к желаемому файлу-композитору:
COMPOSER=composer.master.json php composer.phar update
COMPOSER=composer.dev.json php composer.phar update
См. Документы CLI .