为了账号安全,请及时绑定邮箱和手机立即绑定

默认情况下,如何防止Conda激活基本环境?

/ 猿问

默认情况下,如何防止Conda激活基本环境?

慕桂英4014372 2019-11-25 14:27:34

我最近在Mac上安装了anaconda2。默认情况下,将Conda配置为在打开新的终端会话时激活基本环境。


我想访问Conda命令(即,我想将Conda的路径添加到我的$ PATH中,初始化时Conda会这样做,所以就可以了)。


但是我通常不使用python编程,并且我不希望Conda默认激活环境。


首次conda init从提示执行时,Conda将以下内容添加到我的.bash_profile:


# >>> conda initialize >>>

# !! Contents within this block are managed by 'conda init' !!

__conda_setup="$('/Users/geoff/anaconda2/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"

if [ $? -eq 0 ]; then

    eval "$__conda_setup"

else

if [ -f "/Users/geoff/anaconda2/etc/profile.d/conda.sh" ]; then

    . "/Users/geoff/anaconda2/etc/profile.d/conda.sh"

else

    export PATH="/Users/geoff/anaconda2/bin:$PATH"

fi

# fi

unset __conda_setup

# <<< conda initialize <<<

如果我注释掉整个块,则无法激活任何Conda环境。


我试图注释掉整个区块,除了


export PATH="/Users/geoff/anaconda2/bin:$PATH"

但是,当我开始一个新的会话并尝试激活环境时,我收到了以下错误消息:


CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.

这个问题(以及其他类似的问题)很有帮助,但最终并不能回答我的问题,更适合Linux用户。


为了澄清起见,我并没有要求(base)从我$PS1要求Conda打开终端会话时不激活基础功能中删除。


查看完整描述

3 回答

?
暮色呼如

我有conda 4.6,其中包含由conda添加的类似代码块。就我而言,有一个conda配置设置可以禁用自动基本激活:


conda config --set auto_activate_base false

首次运行时,它将./condarc在您的主目录中创建一个具有该设置的设置,以覆盖默认设置。


这不会使您杂乱无章,.bash_profile但是如果不手动编辑conda管理的部分,这将是一个更干净的解决方案。


查看完整回答
反对 回复 2019-11-25
?
慕田峪9158850

答案取决于conda您所安装的版本。对于conda> = 4.4的版本,deactivate初始化后对conda环境应该足够了,因此添加


conda deactivate

就在下面


# <<< conda initialize <<<


查看完整回答
反对 回复 2019-11-25
?
慕侠2389804

所以最后我发现,如果我像这样注释掉Conda初始化块:


# >>> conda initialize >>>

# !! Contents within this block are managed by 'conda init' !!

# __conda_setup="$('/Users/geoff/anaconda2/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"

# if [ $? -eq 0 ]; then

    # eval "$__conda_setup"

# else

if [ -f "/Users/geoff/anaconda2/etc/profile.d/conda.sh" ]; then

    . "/Users/geoff/anaconda2/etc/profile.d/conda.sh"

else

    export PATH="/Users/geoff/anaconda2/bin:$PATH"

fi

# fi

# unset __conda_setup

# <<< conda initialize <<<

正是我想要的。也就是说,如果需要,Conda可用于激活环境,但默认情况下不会激活。


查看完整回答
反对 回复 2019-11-25

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信