在conda中创建带有和不带有克隆基础的新环境之间的区别

时间:2020-07-12 10:42:03

标签: anaconda conda

在官方的conda文档中,新环境是通过以下方式创建的:

conda create --name myenv

但是我发现它不可靠,因此我通常会创建一个具有克隆基础的新环境:

conda create --name myenv --clone base

据我了解,如果要克隆任何其他环境,那么您将复制该环境中所有软件包的精确副本。但是,如果在不克隆的情况下创建新环境,则默认情况下仍会获得所有基本软件包。但是,如果您在不克隆基础的情况下创建了新环境,则安装某些新软件包可能会出现问题,因为它们可能需要更新基础中的某些依赖项。

所以,我想知道到底有什么区别?

1 个答案:

答案 0 :(得分:1)

第一种情况,

conda create --name myenv

不指定任何软件包将创建一个没有软件包的完全空的环境。因此,如果您运行(比如说)Python,您的外壳仍将在基本环境中运行Python,并且您将看到所有包。如果将Python安装到新环境中(在创建时或之后):

conda install -n myenv python

然后运行Python,您将看到没有可用的软件包。您可以通过写信进一步确认

conda list -n myenv

这应该告诉您myenv中没有软件包。