핍의 캐시를 제거 하시겠습니까?


443

psycopg2 v2.4.1을 구체적으로 설치해야합니다. 나는 실수로했다 :

 pip install psycopg2

대신에:

 pip install psycopg2==2.4.1

이전 버전 대신 2.4.4가 설치됩니다.

이제 psycopg2를 pip 제거하고 올바른 버전으로 다시 설치 한 후에도 pip가 처음 다운로드 한 캐시를 다시 사용하는 것으로 보입니다.

pip가 다운로드 캐시를 지우고 명령에 포함 된 특정 버전을 사용하도록하려면 어떻게해야합니까?


4
현재 최신 답변 (pip 관리자가 게시)은 stackoverflow.com/a/61762308/1931274 입니다.
pradyunsg

답변:


506

pip 6.0 이상을 사용하는 경우 --no-cache-dir옵션을 추가하십시오 .

pip 6.0 이전의 pip를 사용하는 경우으로 업그레이드하십시오 pip install -U pip.


8
~ / .pip를 보았지만 빈 디렉토리입니다. --ignore-installed에 대한 팁이 트릭을 만들었습니다!
Geuis

7
OSX에서는 pip 관련 디렉토리를 삭제해야했습니다.$TMPDIR
Bryan P

2
VIRTUALENV 사용하는 경우 envs을 삭제해야 할 수도 있습니다 / {yourenvsname} / 빌드 / {packageinquestion} 디렉토리 ...
Vajk Hermecz

6
Windows에서 : pip 캐싱 디렉토리가 ~ \ AppData \ Local \ pip \ cache에 있음을 보았습니다
Mercury

2
python -m pip install -U pipWindows 에서해야 합니다. ( pip.exe그렇지 않으면 파일 잠금으로 인해 업그레이드 할 수 없습니다 .)
jpmc26

456

시스템에 적합한 캐시 디렉토리를 지우십시오.

리눅스와 유닉스

~/.cache/pip  # and it respects the XDG_CACHE_HOME directory.

OS X

~/Library/Caches/pip

윈도우

%LocalAppData%\pip\Cache

6
상위 3 개의 답변이 실제로 질문에 답변하지 않는 것은 당연한 일이며, 이것이 첫 번째 답변입니다.
AmphotericLewisAcid

1
현재 최신 답변 (pip 관리자가 게시)은 stackoverflow.com/a/61762308/1931274 입니다. 지금 가장 좋은 방법은입니다 pip cache purge.
pradyunsg

104

https://pip.pypa.io/en/latest/reference/pip_install.html#caching의 설명서에서 :

v6.0부터 pip는 웹 브라우저의 캐시와 유사하게 작동하는 기본 캐시를 제공합니다. 캐시는 기본적으로 켜져 있고 기본적으로 올바른 작업을 수행하도록 설계되어 있지만 --no-cache-dir 옵션을 사용하여 캐시를 비활성화하고 항상 PyPI에 액세스 할 수 있습니다 .


2
정답입니다. 링크는 Linux, Windows 및 OS X에서 pip가 캐시를 보관하는 위치를 보여줍니다.
jasonjwwilliams

3
또한 캐시에서 "나쁜"개체를 제거하려면 페이지에서 캐시 파일의 위치를 ​​찾고 문제가있는 패키지를 "찾아"보십시오. Linux는 ~ / .cache / pip, Mac은 ~ / Library / Caches / pip 등입니다. 흥미롭게도 psycopg2도 문제 패키지 였지만 기존 패키지가 더 이상 존재하지 않는 다른 Postgresql 라이브러리 용으로 컴파일 되었기 때문입니다. 내 서버.
Chris Cogdon

78

pip는 다음과 같이 캐시를 무시하고 패키지를 설치할 수 있습니다

pip --no-cache-dir install scipy

7
@dafeda의 답변은 동일한 정보를 제공합니다 4 개월 전
Foon


19

(핍 관리자)!

pip 6.0 이후 (2014 년으로 돌아 왔습니다!) 이후 pip install, pip download및 옵션을 pip wheel사용하여 캐시를 사용하지 않도록 명령을 지시 할 수 있습니다 --no-cache-dir. (예 : pip install --no-cache-dir <package>)

pip 10.0 이후 (2018 년으로 돌아 왔습니다!), pip config캐시를 항상 무시하도록 pip를 구성하는 데 사용할 수 있는 명령이 추가되었습니다 pip config set global.cache-dir false. 캐시를 "전역 적으로"사용하지 않도록 (즉, 모든 명령에서) pip를 구성합니다.

pip 20.1부터 pip pip cache에는 pip 캐시의 내용을 관리 하는 명령이 있습니다.

  • pip cache purge 캐시에서 모든 휠 파일을 제거합니다.
  • pip cache remove matplotlib 캐시에서 matplotlib와 관련된 파일을 선택적으로 제거합니다.

요약하면 pip는 캐시 사용 방법을 조정하는 많은 방법을 제공합니다.

  • pip install --no-cache-dir <package>:이 실행을 위해 캐시를 사용하지 않고 패키지를 설치하십시오.
  • pip config set global.cache-dir false: 캐시를 "전역 적으로"사용하지 않도록 pip 구성 (모든 명령에서)
  • pip cache remove matplotlib: pip의 캐시에서 matplotlib와 관련된 모든 휠 파일을 제거합니다.
  • pip cache purge: pip의 캐시에서 모든 파일을 지우려면.

질문에 언급 된 "캐싱으로 인해 잘못된 버전 설치"문제의 특정 문제가 pip 1.4에서 수정되었습니다 (2013 년에 다시!) :

빌드 디렉토리 정리 및 재사용과 관련된 여러 가지 문제를 해결하십시오. (# 413, # 709, # 634, # 602, # 939, # 865, # 948)


10

--no-cache-dir기본적으로 옵션 을 설정하려면 다음을 입력하십시오 pip.conf.

[global]
no-cache-dir = false

의 위치는 pip.conf운영 체제 에 따라 다릅니다. 자세한 내용은 설명서 를 참조하십시오.


9

방금 비슷한 문제가 발생하여 패키지를 업그레이드하기 위해 pip를 얻는 유일한 방법 은 이전에 완료되지 않은 설치 또는 이전 버전의 pip에서 남아있을 수 있는 $PWD/build( %CD%\buildWindows의) 디렉토리를 삭제하는 것입니다. 성공적인 설치 후 디렉토리를 빌드하십시오).


6

archlinux pip cache는 ~ / .cache / pip에 있으며 http 폴더를 제거하여 문제를 해결할 수 있습니다.


6

내 Mac에서 캐시 디렉토리를 제거해야했습니다. ~/Library/Caches/pip/





3

Windows 7에서 % TEMP % \ pip-build를 삭제해야했습니다.


1
감사합니다. 또한 Windows 7을 사용하고 있으며 % TEMP % \ pip 폴더에서 폴더를 찾았습니다. 확실하지 않은 경우 % TEMP %는 환경 변수에 정의됩니다.
Simon


0

더 좋은 방법은 캐시를 삭제하고 다시 작성하는 것입니다. 이러한 방식으로 다른 virtualenv에 다시 설치하면 설치할 때마다 빌드하는 대신 캐시를 사용합니다.

예를 들어 설치하면 캐시 된 휠을 사용한다고 표시됩니다.

Processing <some_prefix>/Library/Caches/pip/wheels/d0/c4/e4/e49fd07bca8dda00dd6b4bbc606aa05a25aacb00d45747a47a/horovod-0.19.3-cp37-cp37m-macosx_10_9_x86_64.wh

하나만 삭제하고 설치를 다시 시작하십시오.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.