2013-10-26 2 views
3

virtualenv 안에 pip를 사용하여 패키지를 설치할 때 어떻게 패키지를 추적 할 수 있습니까?virtualenv에서 사용하지 않는 패키지는 어떻게 제거 할 수 있습니까?

지금은 엉망으로 보입니다. 패키지 A를 설치하면 의존성이 자동으로 설치됩니다. B, C 및 D로 구성됩니다. 그런 다음 패키지 N을 사용하여 의존성을 설치합니다.

이제 패키지 A를 제거하면 종속성이 자동으로 제거되지 않습니다.

내 virtualenv를 깨끗하게 유지하려면 어떻게해야합니까? 사용하지 않는 패키지를 확인하고 제거하는 도구가 있습니까?

+0

"이제 패키지 A를 제거하면 해당 종속성이 자동으로 제거되지 않습니다."감사합니다. * 제거되지 않았습니다! 종속성은 패키지 수에 따라 사용될 수 있으므로 전체 검사없이 제거하려면 간단히 * 잘못되었습니다. – Bakuriu

답변

6

가상화를 만드는 것은 상대적으로 저렴합니다. 이 상황에 빠지면 pipen install을 다시 실행할 때마다 새로운 virtualenv를 만들 수 있습니다.

매우 우아하지 않지만 일을 끝내게됩니다. 물론 pip 설치를위한 몇 가지 요구 사항 파일을 유지해야하며 pip에 대한 로컬 색인이나 캐시가 있으면 더 빠를 것입니다.

3

깨끗한 환경을 만들려면 새 환경을 만드십시오. 일부 핍 고리가이 경로에 당신을 도울 수 :

  • pip freeze 설치 패키지와 패키지 버전의 목록을 얻으려면, 느릅 나무 나중에 패키지의 목록을 설치
  • -r <file> 사용할 수 있습니다하는 요구 사항이 파일에 명시된
  • 장소
  • --build <dir>
  • --no-clean
  • 나중에 사람들은 --no-download
  • 와 빌드 사용할 수 있습니다 정리 빌드 디렉토리하지 않는 특정 디렉토리에 빌드 16,
  • --no-deps 종속성을 설치하지
2

대체 방법은 "setup.py"또는 "requirements.txt"에서 프로젝트의 각 의존성을 이름을 지정하는 것입니다. 응용 프로그램을 성공적으로 실행하려면 setup.py를 실행하거나 virtualenv로 cat requirements.txt을 여러 번 설치하십시오. 그런 다음 수동으로 종속성을 동기화 상태로 유지하려면 파일 중 하나에 새 종속성을 추가하십시오.

관련 문제