Fish Shell Status
使用fish shell并使用Conda Activate的时候, 返回值是4而不是0, 虽然不影响功能, 但是这个error会很不好看
原因
是因为为了修复PowerShell的bug, 将 environment variable 的值从
""改成了None, 导致这个var在fish shell中消失. 但是在activate.py中, 仍然尝试清除这两个shell, 导致return status 为4
解决方案: 这个pr, 但是不知道为什么没有merge到主分支, 也没有release
解决方案
在
miniconda3/lib/python3.x/site-packages/conda/activate.py中, 搜索set -e(大概在961行), 有一个unset_var_tmpl = "set -e %s", 改成unset_var_tmpl = "set -e %s || true"即可
Fish Source Activate
fish shell无法使用下面的命令直接启动:
source <path/to/miniconda3>/bin/activate <env_name>因为activate是bash语法, 无法使用fish运行
这个没有解决方案, 只能使用Conda Activate(即conda init fish然后conda activate <env_name>)
conda: command not found or conda: error: argument COMMAND
使用命令conda init <shell>进行初始化(<shell>指的是你想要使用conda的shell)
The current environment has been corrupted
查看在哪个package出现了问题,直接删掉相关的包(文件夹~/miniconda3/pkgs/<pkg_name>和文件~/miniconda3/pkgs/<pkg_name>.conda,还有文件~/miniconda3/conda-meta/<pkg_name>.json)
删除掉之后,重新运行conda update --all,即可恢复
environment.yml not exist
没有进入conda环境(没有activate base或者其他env), 使用:
conda activate