可以选择将依赖项名称/urls/版本复制到文件。
建议数
通常,在新环境中工作比更改根目录更安全。但是,在尝试更改之前,请考虑备份现有环境。通过在演示环境中测试这些命令来验证所需的结果。要备份您的根目录
env,例如:
λ conda activate root
λ conda env export > environment_root.yml
λ conda list --explicit > spec_file_root.txt
选择权
选项1-YAML文件
在第二个环境(例如myenv
)中,将名称导出到yaml文件:
λ activate myenv
λ conda env export > environment.yml
然后用yaml文件更新第一个环境(例如root
):
λ conda env update --name root --file environment.yml
选项2-克隆环境
使用--clone
标志来克隆环境(请参阅@DevC的帖子):
λ conda create --name myclone --clone root
这基本上是创建环境的直接副本。
选项3-等级库文件
创建一个规范文件以从env附加依赖项(参见@Ormetrom):
λ activate myenv
λ conda list --explicit > spec_file.txt
λ conda install --name root --file spec_file.txt
或者,复制一个新环境(建议):
λ conda create --name myenv2 --file spec_file.txt
另见
conda env
了解有关env子命令的更多详细信息李>额外费用
似乎有一个未记录的conda run
选项可帮助在特定环境中执行命令。
# New command
λ conda run --name myenv conda list --explicit > spec_file.txt
后一个命令在没有激活/停用步骤的环境中运行命令时非常有效。请参见下面的等效命令:
# Equivalent
λ activate myenv
λ conda list --explicit > spec_file.txt
λ deactivate
注意,这可能是一个实验性的特性,因此在正式引入公共API之前,这可能不适合在生产中使用。
Conda文档自原始帖子以来已经更改;链接更新。Spec-file仅适用于在同一操作系统上创建的环境。与前两个选项不同,spec-file只捕获到conda依赖项的链接;pip依赖项不包括在内。
要复制根环境(名为base
),可以使用以下命令;在Anaconda3-5.0上为我工作。1:
conda create --name <env_name> --clone base
您可以使用以下命令列出在conda环境中安装的所有包
conda list -n <env_name>
设置新环境时,我需要新环境中的基本环境中的包(通常是这样),我在提示符中使用spec文件构建相同的conda环境。txt与:
conda list --explicit > spec-file.txt
规范文件包括例如基本环境的包。
然后使用提示符将软件包安装到新环境中:
conda install --name myenv --file spec-file.txt
然后,来自base的包可以在新环境中使用。
整个过程在文档中描述:https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#building-相同的康达环境