我创建了一个Anaconda Python Conda环境,并导出了一个spec文件,以便以后可以使用命令conda list --explicit
重新安装完全相同的环境。今天是今天,但我很失望地看到其中一个文件不可用,被替换为新版本:
https://conda.anaconda.org/conda-forge/win-64/gdal-2.1.3-np111py35_vc14_0.tar.bz2https://conda.anaconda.org/conda-forge/win-64/gdal-2.1.3-np111py35_vc14_7.tar.bz2
Conda遇到错误,因为链接已断开,然后重试几次均未成功:
CondaError: CondaHTTPError: HTTP 404 NOT FOUND for url <https://conda.anaconda.org/conda-forge/win-64/gdal-2.1.3-np111py35_vc14_0.tar.bz2
Elapsed: 00:01.270000
CF-RAY: 3fa8f7eb093298a1-LAX
An HTTP error occurred when trying to retrieve this URL.
HTTPerrors are often intermittent, and a simple retry will get you on your way.
四部分问题:
在conda频道中,不能保证您使用的工具的版本将被永久维护。例如,如果在一个工具中发现了一个bug,它将被更正,并将用一个新版本代替旧版本。在
conda list explicit
不是一个很好的导出环境的方法,因为,正如您所说,它只能在很短的时间内工作。此外,它不可移植到其他操作系统。我推荐conda env export
或{所以回答
问题1:
如果以正确的方式导出环境,则可以随着时间的推移使用它们。您永远无法确定10年前使用的工具版本是否仍然可用,但conda在导入环境时会告诉您这一点。在
问题2:
你可以创建你自己的conda频道和打包任何你想要的固定版本的工具。但问题是:“你真的需要这个吗?”。这意味着你使用的工具没有升级。有时,最好更新代码并使用新版本的工具,而不是保留旧的错误版本或忘记改进。在
我从来没有测试过,但在另一篇文章中我读到环境是自包含在一个文件夹中,
$CONDA_HOME/envs/[your_env]
并且这个文件夹可以直接复制到另一个conda安装中,如果它是相同的架构(linux64,windows,OSX…)。在问题3:
除了
conda env export
之外,没有其他工具可用于此操作。顺便说一下,我想所有下载的包都在$CONDA_HOME/pkgs
中。在问题4:
不,因为这不是导出环境的好方法。有关信息,conda不会为不同的环境多次下载相同的软件包。它重用已经安装的包。您可以在家中添加一个名为
.condarc
的文件,并将其放入该文件allow_softlinks: false
。这将告诉conda重新安装安装新环境所需的任何软件包,而不是链接已安装在其他环境中的工具。在相关问题 更多 >
编程相关推荐