📜  使用 yml 文件中的环境进行 conda 更新 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:06:52.009000             🧑  作者: Mango

使用 yml 文件中的环境进行 conda 更新 - Shell-Bash

在使用 Conda 管理 Python 环境时,我们常常需要使用 yml 文件来定义环境。而在更新环境时,如果我们每次都手动去添加依赖包和删除不需要的依赖包,会非常繁琐。

下面介绍一种通过 yml 文件中记录的环境信息,自动更新环境的方法。

1. 创建 yml 文件

我们以 test_env.yml 文件为例,该文件包含了我们需要用到的所有依赖包及其版本信息。

name: test_env
channels:
  - defaults
  - conda-forge
dependencies:
  - python=3.8
  - pandas=1.3.3
  - numpy=1.21.2
  - matplotlib=3.4.3
2. 更新环境

通过以下命令,我们可以根据 yml 文件中的环境信息自动更新环境。

conda env update --file test_env.yml --prune

执行该命令后,Conda 会自动安装新增的依赖包和更新需要更新的依赖包,并删除不需要的依赖包。其中,--file 参数指定 yml 文件,--prune 参数会自动删除不需要的依赖包。

3. 验证环境

更新完成后,我们可以通过以下命令验证环境是否成功更新。

conda activate test_env
conda list

执行以上命令后,我们可以看到 test_env 环境中的依赖包已经全部按照 yml 文件中的版本信息更新成功。

# packages in environment at /Users/xxx/opt/anaconda3/envs/test_env:
#
# Name                    Version                   Build  Channel
argon2-cffi               20.1.0           py38h9ed2024_1  
async_generator           1.10                       py_0  
ca-certificates           2021.9.30            hecd8cb5_1  
certifi                   2021.10.8        py38hecd8cb5_0  
cffi                      1.14.6           py38h9ed2024_0  
chardet                   4.0.0           py38hecd8cb5_1003  
...

以上就是使用 yml 文件中的环境进行 Conda 更新的方法。通过记录的环境信息,我们可以轻松地管理环境和依赖包,提高工作效率。