Как правильно выполнить развертывание при использовании коммутатора разработки / производства Composer?

Composer имеет возможность загружать несколько зависимостей только в процессе разработки, поэтому инструменты не будут установлены в производственной среде (на работающем сервере). Это (теоретически) очень удобно для сценариев, которые имеют смысл только при разработке, таких как тесты, fake-data-tools, отладчик и т. Д.

Для этого нужно добавить дополнительныйrequire-dev блок с инструментами, которые вам нужны в dev:

"require-dev": {
    "codeception/codeception": "1.6.0.3"
}

а затем (теоретически) загрузить эти зависимости через

composer install --dev
Проблема и вопрос:

Композитор изменил поведениеinstall а такжеupdate резко в 2013 году,require-dev-зависимости теперь установлены по умолчанию (!), не стесняйтесь создавать composer.json сrequire-dev заблокировать и выполнитьcomposer install воспроизвести.

Как наиболее приемлемый способ развертывания, это нажать композитора.замок (содержит текущую настройку композитора), а затем выполнитеcomposer install на производственном сервере также будут установлены средства разработки.

Как правильно развернуть этобез установка зависимостей -dev?

Примечание: я пытаюсь создать канонический Q / A здесь, чтобы прояснить странное развертывание Composer. Не стесняйтесь редактировать этот вопрос.

Ответы на вопрос(5)

Ваш ответ на вопрос