Introduction

備忘録。
デフォルトだと %LocalAppData% に作成しにいくので辛い。
また最近のAnaconda navigatorは初回に保存先を聞いてくるようですが、それをスキップするとGUIから変更する手段がないのも辛い。

2018/11/01 更新 仮想環境はcondaを使わない方が良いです。condaの仮想環境ではpipでインストールしたパッケージを全ての環境で共有してしまうからです。
正しい仮想環境の作成は開発メモ その143 Pythonの仮想環境を正しく使うを参考にして下さい。

Resolution

解決策はこちら。

やはりStackoverflowはしゅごい(小並感) 手順は、

1. .condarc を開く

私の環境では**%userprofile%**にありました。

2. 下記の記述を追記

1
2
envs_dirs:
- /Users/nolan/newpath

ディレクトリ部分は好きなように変えましょう。
ここではD:\Works\Python\Envsに変更します。パスの区切りはバックスラッシュでOK。
つまり

1
2
envs_dirs:
- D:\Works\Python\Envs

です。

3. 既存の環境を移動

次に既に作成されたいる仮想環境を移動します。
規定では、**%LocalAppData%\conda\conda\envs**に作成されている模様。
コマンドで、

1
2
3
4
5
$ conda info -e
# conda environments:
#
base * C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64
face_regognition C:\Users\XXXXXXX\AppData\Local\conda\conda\envs\face_regognition

という確認も可能。
(どうでもいいけどスペル間違えてる….) 場所がわかったら、そこの配下をD:\Works\Python\Envsコピーします。
移動すると壊れた場合に戻せないので。

4. 古い環境を削除

この状態で、先ほどのコマンドを打っても

1
2
3
4
5
$ conda info -e
# conda environments:
#
base * C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64
face_regognition C:\Users\XXXXXXX\AppData\Local\conda\conda\envs\face_regognition

コピーを認識していませんが… Anaconda Navigatorは認識しています。

おそらく名前が重複している場合は、先に見つかった方を優先しているのでしょう。
ですので、ここから古い方を削除します。

削除後、

1
2
3
4
5
$ conda info -e
# conda environments:
#
base * C:\Program Files (x86)\Microsoft Visual Studio\Shared\Anaconda3_64
face_regognition D:\Works\Python\Envs\face_regognition

きちんとコピーを認識してくれました。
無事に完了です。