
API 프로젝트에는 작곡가.json이 다음과 같이 설정되어 있습니다.
{
"require-dev": {
"phpunit/phpunit": "4.7.*"
},
"require": {
"monolog/monolog": "1.5.*"
}
}
그리고 처음에는 composer install
모든 것이 괜찮았습니다. Phpunit은 vendor/bin/phpunit
. 내 작업 컴퓨터는 Windows 7 OS이지만 이 프로젝트에서는 git을 사용하고 다른 컴퓨터(Kubuntu 14.04)에서 이 작업을 수행하면 git pull
더 이상 단위 테스트를 실행할 수 없습니다. vendor/bin/phpunit
- 오류와 함께 실패합니다. 공급업체/bin/phpunit을 찾으세요.
Linux 시스템에서는 작동하지 않는 실행 파일 Vendor/bin/phpunit을 삭제하고 Vendor/phpunit 폴더를 제거한 다음 작곡가가 composer update
. 이 시점에서 이전처럼 단위 테스트를 다시 실행할 수 있습니다. 그러나 이는 Windows 7에서는 원활하게 작동하지 않습니다. 더 까다롭습니다.
내 질문은: github를 통해 파일을 추적한 다음 다양한 운영 체제에서 작업하면 내가 뭔가 잘못하고 있는 걸까요? 디렉터리 composer.json
의 내용을 추적 하고 vendor/phpunit/phpunit
추적되지 않은 상태로 유지하고 파일을 특정 OS에 유지하면 이 오류를 피할 수 있습니까? 고마워요, 아담.
답변1
vendor
Composer의 목적은 저장소에 빈(!) 디렉토리가 있어야 하지만 composer.json
(요구 사항) 및 composer.lock
(마지막으로 테스트된 특정 버전)을 추적하고 composer install
새 개발 시스템에서 체크아웃 후 실행하는 것입니다.
(주의: 파일 composer install
에 따라 특정 버전을 설치합니다 composer.lock
. composer update
에 정의된 요구 사항과 일치하는 최신 버전을 설치합니다 composer.json
.)
그런 다음 Composer는 시스템에 적합한 바이너리를 다운로드하여 vendor/bin/
디렉터리에 넣어야 합니다.