wake-up-neo.com

Wie kann ich eine Conda-Umgebung umbenennen?

Ich habe eine Conda-Umgebung mit dem Namen old_name. Wie kann ich den Namen in new_name ändern, ohne dass Referenzen verletzt werden?

184
pkowalczyk

Das kannst du nicht.

Eine Problemumgehung besteht darin, create die Umgebung zu klonen und remove die ursprüngliche Umgebung zu erstellen:

(Denken Sie daran, die aktuelle Umgebung mit deactivate unter Windows und source deactivate unter macOS/Linux zu deaktivieren.)

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

Es gibt mehrere Nachteile dieser Methode:

  1. es lädt Pakete erneut herunter - Sie können das --offline Flag verwenden, um es zu deaktivieren,
  2. zeit, die für das Kopieren der Umgebungsdateien benötigt wird,
  3. temporäre Doppelbelegung.

Es ist ein offenes Problem vorhanden, das diese Funktion anfordert.

293
pkowalczyk

Aufgrund des hilfreichen Kommentars von dwanderson konnte ich dies in einem Bash-Einzeiler tun:

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

Mein schlecht benanntes env war "env1" und das neue, von dem ich es klonen möchte, ist "envpython2".

5
bgoodr