我有一个requirements.txt
列出了几个依赖项的文件。
每当我pip install -r requirements.txt
在一个全新的系统中尝试时,如果不满足某些依赖项,这通常会失败(参见例如:here和here)这特别发生在matplotlib
包中。
在下载了整个包(matplotlib
大约 50Mb)并且安装失败后,我去修复问题,然后再次尝试安装包。
pip
似乎还不够聪明,无法意识到它只是下载了那个包并自动重新使用同一个文件(也许是因为它默认不保留副本?)所以包将被完全下载。
为了解决这个问题,我可以按照此处给出的说明使用:
pip install --download=/path/to/packages -r requirements.txt
首先下载所有软件包,然后:
pip install --no-index --find-links=/path/to/packages -r requirements.txt
使用本地存储的文件安装所有软件包。
我的问题:是否有包含这两个指令的智能命令?我在单行之后,我可以重复运行,以便它将使用存储的包副本(如果存在),或者下载它们(如果不存在),在最后一种情况下,将这些副本存储到某个位置,以便它们可以重新- 如果需要,稍后使用。