我需要安装psycopg2 v2.4.1。我不小心做到了:
pip install psycopg2
而不是:
pip install psycopg2==2.4.1
这将安装2.4.4而不是早期版本。
现在,即使在我卸载psycopg2并尝试使用正确的版本重新安装之后,pip似乎正在重新使用它第一次下载的缓存。
如何强制pip清除其下载缓存并使用我在命令中包含的特定版本?
我需要安装psycopg2 v2.4.1。我不小心做到了:
pip install psycopg2
而不是:
pip install psycopg2==2.4.1
这将安装2.4.4而不是早期版本。
现在,即使在我卸载psycopg2并尝试使用正确的版本重新安装之后,pip似乎正在重新使用它第一次下载的缓存。
如何强制pip清除其下载缓存并使用我在命令中包含的特定版本?
当前回答
由于pip 20.1b1于2020年4月21日发布,“增加了用于检查/管理pip车轮缓存的pip缓存命令”,因此可以发出以下命令:
pip cache purge
参考指南如下: https://pip.pypa.io/en/stable/reference/pip_cache/ 对应的拉请求在这里。
其他回答
由于pip 20.1b1于2020年4月21日发布,“增加了用于检查/管理pip车轮缓存的pip缓存命令”,因此可以发出以下命令:
pip cache purge
参考指南如下: https://pip.pypa.io/en/stable/reference/pip_cache/ 对应的拉请求在这里。
更好的方法是删除缓存并重新构建它。通过这种方式,如果您为其他virtualenv再次安装它,它将使用缓存,而不是每次安装时都构建缓存。
例如,当你安装它时,它会说它使用缓存转盘,
Processing <some_prefix>/Library/Caches/pip/wheels/d0/c4/e4/e49fd07bca8dda00dd6b4bbc606aa05a25aacb00d45747a47a/horovod-0.19.3-cp37-cp37m-macosx_10_9_x86_64.wh
只需删除该文件并重新启动安装。
如果使用pip 6.0或更新版本,请尝试添加——no-cache-dir选项(source)。
如果使用pip 6.0以上的版本,请使用pip install -U pip进行升级。
(…)显示PIP正在重新使用缓存(…)
我很确定事情不是这样的。Pip曾经(错误地)重用构建目录而不是缓存。在2013-07-23发布的pip 1.4版本中修复了这一问题。
(pyvenv.d) jdoe$ pip --version # pip version for this answer (or newer).
pip 21.1.1
(pyvenv.d) jdoe$ pip cache --help # Review all options available to you.
(pyvenv.d) jdoe$ pip cache dir # Cache-directory for pip(1).
/home/jdoe/.cache/pip
(pyvenv.d) jdoe$ pip cache purge # Purge cache-directory (by example).
Files removed: 621 # If cache-directory is already empty, the
# output will be: "ERROR: No matching packages".