Come posso rinominare un ambiente conda?


Risposte:


458

Non puoi.

Una soluzione alternativa è creare un ambiente clone, quindi rimuovere quello originale:

(ricorda di disattivare l'ambiente corrente con deactivatesu Windows e source deactivatesu macOS / Linux)

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

Esistono diversi svantaggi di questo metodo:

  1. scarica di nuovo i pacchetti: puoi usare --offlineflag per disabilitarlo,
  2. tempo impiegato per la copia dei file dell'ambiente,
  3. utilizzo temporaneo del doppio disco.

C'è un problema aperto che richiede questa funzione.


90
booooo perchè non si può rinominare un conda env?
Charlie Parker,

6
in modo da lasciare un po 'di lavoro a coloro che biforcano la conda e quindi a farli capire molto di più lungo il percorso: P: D
Saravanabalagi Ramachandran,

3
Un altro modo è quello di clonare l'ambiente, conda create --name new_name --clone old_namequindi è possibile rimuovere quello vecchio.
Y0da

4
Avvertimento: ho provato a farlo e ho riscontrato bizzarri errori: il mio .bashrcnon funzionava più e il tentativo di esecuzione pytestfalliva, cercando di fare riferimento all'ambiente ora rimosso. Ho provato nuove shell e il riavvio senza fortuna. Alla fine è stato necessario spazzare via il nuovo ambiente, quindi iniziare con un'installazione pulita. Più lento, ma sembra funzionare davvero ora.
Dwanderson,

3
@dwanderson +5000 mentre stavo per provare a usare questa risposta, ma invece ho intenzione di estrarre da zero il cerotto e ricreare il mio env dal nome malvagio.
bgoodr,

13

Sulla base del commento utile di dwanderson , sono stato in grado di farlo in un one-liner di Bash:

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

Il mio env chiamato malamente era "env1" e quello nuovo che desidero clonare da esso è "envpython2".


1
Si è verificato un errore dicendo PackagesNotFoundError: The following packages are not available from current channelscon questo script. Questo script probabilmente funziona solo quando non hai pacchetti installati con pip e che non sono disponibili in conda nell'ambiente esistente?
Yuxuan Chen


-41

Basta aprire la cartella "\ Anaconda \ envs" e rinominarla.

Prima di rinominare prima di rinominare

Dopo Rinomina dopo rinominare


13
Questa risposta rompe Giove. Jupyter riporta "percorso non trovato" quando tenta di avviare il kernel python.
MD004,

5
Esiste un rischio enorme di violazione dell'ambiente
FabienP,

2
non farlo.
BenP,

uno dei motivi per cui questa è una cattiva idea: ci sono file all'interno della directory env / name che contengono il percorso assoluto di quella directory. Se si sposta la directory, il percorso non funzionerà più poiché punta alla vecchia directory che non esiste più: envs / ds_tensorflow / Lib / site-pacchetti / sipconfig.py: 'default_bin_dir': 'C: / Users / me / miniconda3 / envs / ds_tensorflow ', envs / ds_tensorflow / Lib / site-pacchetti / sipconfig.py:' default_mod_dir ':' C: / Users / me / miniconda3 / envs / ds_tensorflow \\ Lib \\ site-pacchetti ',
Donald S
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.