Anaconda 全家桶介绍
本笔记内容参考:15分钟彻底搞懂!Anaconda Miniconda conda-forge miniforge Mamb

Anaconda 系列
Anaconda Distribution:Anaconda Distribution 简称 Anaconda 包,就是我们在 Anaconda 官网上下载的安装包内容。其是使用 Python 编写的,提供了大量科学计算领域的二进制文件和 Python 库。
Anaconda.org:当 Anaconda 爆火后,显然官方维护的库已经不够大家使用了,因此 Anaconda 公司主动提供了一个 anaconda.org 平台供大家上传自己的库,并将自己原先整理的 Anaconda Distribution 放置在 anaconda.org 的 defaults 库 Channel 中。
Miniconda:随着 anaconda.org 的出现,大多数情况下我们不希望完整下载 Anaconda Distribution,毕竟很多时候我们并不想用里面的包,而是只下载一个 conda 的包管理器,并从 anaconda.org 下载自己想用的包。因此 Anaconda 公司提供了 miniconda 工具,只最小程度满足 conda 的包管理器,而不去完整按照 Anaconda Distribution。
Mamba:由于 conda 工具本身是用 Python 写的,其在计算依赖等情况下效率非常低,因此社区为了提高 conda 的性能,重新实现了那些耗时的模块,这种新实现被称为 Mamba。现在 conda 或者 miniforge 默认都使用 Mamba。
注意:一般安装包不要放在 base环境中,因为 conda 工具本身运行于 base 环境,如果把 base 环境搞坏了则所有环境都毁了。
Conda-Forge 系列
Conda Forge:随着 Anaconda.org 的出现,社区自发组织了一个名为 conda forge 的 channel,现在 conda forge 已经是更新最快,包内容最多,且完全免费的 channel 了。而 Anaconda 公司现在对商用 defaults channel 收费,因此越来越多人转向了 conda forge。但是由于 conda 默认指向 defaults 的 channel,如果要使用 conda forge需要在每个命令后面都加上 -c conda-forge。
MiniForge:由于 Anaconda 和 Miniconda 都默认指向 defaults 的 channel,因此社区基于 conda 的开源程序重新开发了 miniforge 以替代 miniconda,并且默认均指向 conda-forge。(但是其实只需要习惯于使用 environment.yml 指定 channels 就可以)
注意:现在 conda-forge 的兼容性以及包的数量已经被视为超过 defaults channel,因此在实际项目中强烈建议只使用 conda-forge channel 并且不要使用 defaults。几乎唯一的特殊情况是要安装特殊优化的包,例如 mkl。
Environment.yml