讓 conda 不要每次開終端機就自動啟用 base
一行 conda config --set auto_activate false,把 (base) 從你的提示字元裡拿掉——順便講清楚它動到的是哪個檔案、舊版本要改哪個鍵,以及為什麼這件事不只是視覺潔癖。
每開一個新的終端機視窗,提示字元前面就掛著一個 (base)。裝完 conda 的人都見過,而它其實只是一個設定值。
一行關掉
conda config --set auto_activate false
重開終端機,(base) 就不見了。
這行做的事很單純:往 ~/.condarc 寫進一行 auto_activate: false。conda init 塞進 ~/.zshrc/~/.bashrc 的那段 shell hook 仍然在,所以 conda 指令、conda activate 都照常可用——只是不再有人替你先按一次 activate。
要用的時候自己來:
conda activate base # 或任何你要的環境
想確認或反悔:
conda config --show auto_activate # 看目前值
conda config --set auto_activate true # 改回自動啟用
舊版本的鍵名不一樣
這個設定原本叫 auto_activate_base,較新的 conda 才改名成 auto_activate(舊名仍可用,但會提示已棄用)。如果你跑上面那行得到 unknown key 之類的錯誤,代表版本較舊,改成:
conda config --set auto_activate_base false
不確定的話,conda config --describe auto_activate 會告訴你這個鍵在你這版存不存在、預設值是什麼。
為什麼值得關掉
不只是提示字元乾淨一點:
which python不再說謊。 base 被啟用時,它的bin排在PATH最前面,於是你以為在用系統 python 或專案的 venv,其實在用 conda 的。這類問題查起來特別費時,因為每一步看起來都對。- 和 venv、pyenv、uv 少打架。 一個已經啟用的 conda 環境疊在另一套虛擬環境上,兩邊都會覺得自己是對的。
- shell 啟動快一點。 省下的時間不多,但每天開幾十個分頁就有感。
代價是你得自己記得 activate。對只用 conda 的人來說是多一個步驟;對機器上同時有好幾套 Python 工具鏈的人來說,這一個步驟換來的是每次都知道自己站在哪裡。