[php] 작성기에서 사용하지 않는 종속성을 제거하는 방법은 무엇입니까?

작곡가와 함께 패키지를 설치했으며 종속성으로 다른 많은 패키지를 설치했습니다.

이제로 기본 패키지를 제거 composer remove packageauthor/packagename했지만 이전의 모든 종속성은 제거되지 않았습니다. 작곡가가 정리 composer.json하고 의존성 에 따라 필요한 패키지 만 정리할 것을 기대 했습니다.

작성기가 강제로 사용하지 않는 모든 패키지를 정리하고 제거하려면 어떻게해야합니까?



답변

이를 수행하는 올바른 방법은 다음과 같습니다.

composer remove jenssegers/mongodb --update-with-dependencies

나는 그 깃발이 무엇을 할 것인지에 대해 명확하지 않다는 것을 인정해야한다.

최신 정보

composer remove jenssegers/mongodb

현재 v1.0.0 개발자 – 베타 --update-with-dependencies 기본이고 더 이상 필요하지 않습니다.


답변

실제로 매우 쉽습니다.

composer update

이 모든 작업을 수행하지만 다른 패키지도 업데이트합니다.

다른 패키지를 업데이트하지 않고 패키지를 제거하려면 다음과 같이 명령에서 해당 패키지를 지정하십시오.

composer update monolog/monolog

monolog/monolog패키지 를 제거합니다 .

그럼에도 불구하고 자동으로 제거 할 수없고 수동으로 제거해야하는 빈 폴더 나 파일이 남아있을 수 있습니다.


답변

다음 명령은 완벽하게 동일하게 수행됩니다.

rm -rf vendor

composer install 


답변

그냥 실행하십시오 composer installvendor디렉토리가 종속성을 반영 하게합니다 .composer.lock 파일의 .

즉, 누락 된 공급 업체를 삭제합니다 composer.lock .

이 작업을 실행하기 전에 작성기 자체를 업데이트하십시오.


답변