Composer에는 개발 중에 만 여러 종속성을로드 할 수있는 옵션이 있으므로 프로덕션 환경 (라이브 서버)에 도구가 설치되지 않습니다. 이것은 이론적으로 테스트, 가짜 데이터 도구, 디버거 등과 같이 개발에만 의미가있는 스크립트에 매우 유용합니다.
가는 방법 require-dev은 개발자가 필요로하는 도구 로 추가 블록 을 추가하는 것입니다 .
"require-dev": {
"codeception/codeception": "1.6.0.3"
}
그런 다음 이론적으로 이러한 종속성을로드합니다.
composer install --dev
문제 및 질문 :
작곡가의 동작을 변경 install하고 update극적으로 2013 년, require-dev-dependencies가 기본으로 설치되어있다 (!)에있어서 A composer.json 만들어 주시기 require-dev블록과 수행 composer install재현.
가장 널리 배포되는 방법은 작곡가를 밀어내는 것입니다. (현재 작곡가 설정을 보유한) lock을 만든 다음 composer install프로덕션 서버에서 작업 을 수행 하면 개발 항목도 설치됩니다.
-dev 의존성 을 설치 하지 않고 이것을 배포하는 올바른 방법은 무엇입니까 ?
참고 : 이상한 Composer 배포를 명확히하기 위해 여기에 표준 Q / A를 만들려고합니다. 이 질문을 자유롭게 편집하십시오.
composer.lock, 망할 놈의 repo에 결코 추가해서는 안됩니다. 올바른 접근 방식은 스테이징에서 composer 업데이트를 사용한 다음 파일을 프로덕션에 동기화하는 것입니다 (물론 모든 것이 작동하는 경우). 스테이징은 프로덕션 환경의 정확한 사본이어야합니다. composer.lock의 일부 여야합니다 .gitignore.