conda更新失败--更新后版本号不变

我们通常使用下面的命令更新conda:

conda update -n base -c defaults conda

然而,这个命令有时候失效。如在我电脑上,4.10.0版本的conda一直无法升级为最新的23.3.1版本

失效情况

在更新前的状态:

(env_name) user_name@node1:~$ conda --version

conda 4.10.0

运行更新

(env_name) user_name@node1:~$ conda update -n base -c defaults conda

Collecting package metadata (current_repodata.json): done

Solving environment: done

==> WARNING: A newer version of conda exists. <==

current version: 4.10.0

latest version: 23.3.1

Please update conda by running

$ conda update -n base -c defaults conda

# All requested packages already installed.

Retrieving notices: ...working... done

系统提示已成功,但更新后conda的版本号仍未变化

(env_name) user_name@node1:~$ conda --version

conda 4.10.0

解决方案

解决方案为加入参数--repodata-fn=repodata.json。详见GitHub讨论

conda update -n base -c defaults conda --repodata-fn=repodata.json