Conda がデフォルトでベース環境をアクティブ化しないようにするにはどうすればよいですか? 質問する

Conda がデフォルトでベース環境をアクティブ化しないようにするにはどうすればよいですか? 質問する

最近、Mac に anaconda2 をインストールしました。デフォルトでは、Conda は新しいターミナル セッションを開くとベース環境をアクティブにするように設定されています。

Conda コマンドにアクセスしたい (つまり、Conda へのパスを、$PATH初期化時に Conda が実行するものに追加したいので、それで問題ありません)。

しかし、私は通常 Python でプログラミングすることはなく、Conda がデフォルトでベース環境をアクティブ化することを望んでいません。

conda initプロンプトから初めて実行すると、Conda は my に以下を追加します.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 がベースをアクティブ化しないように求めているのです。

ベストアンサー1

私は conda 4.6 を使用していますが、これには conda によって追加された同様のコード ブロックが含まれています。私の場合、自動ベース アクティベーションを無効にする conda 構成設定があります。

conda config --set auto_activate_base false

初めて実行すると、.condarcデフォルトを上書きする設定でホーム ディレクトリに が作成されます。

これは整理整頓にはなりません.bash_profileが、conda が管理するセクションを手動で編集する必要がない、よりクリーンなソリューションです。

おすすめ記事