conda環境の名前を変更するにはどうすればよいですか?


回答:


454

できません。

回避策の1つは、クローン環境を作成してから、元の環境を削除することです。

deactivateWindowsおよびsource deactivatemacOS / Linuxでの現在の環境の非アクティブ化について覚えておいてください)

conda create --name new_name --clone old_name
conda remove --name old_name --all # or its alias: `conda env remove --name old_name`

この方法にはいくつかの欠点があります。

  1. パッケージを再ダウンロードします- --offlineフラグを使用して無効にできます。
  2. 環境のファイルのコピーに費やされた時間、
  3. 一時的な二重ディスク使用。

この機能をリクエストする未解決の問題があります。


88
booooo conda envの名前を変更できないのはなぜですか?
チャーリーパーカー

6
コンダをフォークする人のためにいくつかの作業を残して、途中で理解を深めるために:P:D
サラバ

3
もう1つの方法は、環境を複製しconda create --name new_name --clone old_nameてから古い環境を削除することです。
Y0da 2017年

4
警告の言葉-私がこれを試みたところ、奇妙なエラーに遭遇しました-私.bashrcはもはや機能pytestせず、実行しようとすると失敗し、削除された環境を参照しようとしました。新しいシェルを試してみたが、運が悪かった。結局、新しい環境を吹き飛ばして、クリーンインストールから始める必要があります。遅くなりますが、実際には機能しているようです。
dwanderson 2018

3
@dwanderson +5000この回答を使用しようとしたので、代わりに、バンドエイドをすぐに取り除き、悪名のあるenvを最初から再作成します。
bgoodr

13

dwandersonの役立つコメントに基づいて、私はこれをBashのワンライナーで行うことができました。

conda create --name envpython2 --file <(conda list -n env1 -e )

私のひどい名前のenvは「env1」で、それからクローンしたい新しいものは「envpython2」です。


1
PackagesNotFoundError: The following packages are not available from current channelsこのスクリプトでエラーが発生しました。このスクリプトはおそらく、pipでインストールされ、既存の環境ではcondaで利用できないパッケージがない場合にのみ機能しますか?
Yuxuan Chen


-41

フォルダ「\ Anaconda \ envs」を開いて名前を変更するだけです。

名前を変更する前 名前を変更する前

名前変更後 名前変更後


13
この答えはjupyterを壊します。Jupyterは、Pythonカーネルを起動しようとすると「パスが見つかりません」と報告します。
MD004 2018年

5
環境を破壊する大きなリスクがあります
FabienP 2018年

2
こんなことしないで。
BenP

これが悪い考えの1つの理由-env / nameディレクトリ内に、そのディレクトリへの絶対パスを含むファイルがある。ディレクトリを移動すると、存在しない古いディレクトリを指すため、パスは機能しなくなります:envs / ds_tensorflow / Lib / site-packages / sipconfig.py: 'default_bin_dir': 'C:/ Users / me / miniconda3 / envs / ds_tensorflow '、envs / ds_tensorflow / Lib / site-packages / sipconfig.py:' default_mod_dir ':' C:/ Users / me / miniconda3 / envs / ds_tensorflow \\ Lib \\ site-packages '、
Donald S
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.