Jak mogę zmienić nazwę środowiska Conda?


Odpowiedzi:


457

Nie możesz

Jednym z obejść jest utworzenie środowiska klonowania, a następnie usunięcie oryginalnego:

(pamiętaj o dezaktywacji obecnego środowiska deactivatew systemie Windows i 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`

Istnieje kilka wad tej metody:

  1. ponownie pobiera pakiety - możesz użyć --offlineflagi, aby ją wyłączyć,
  2. czas spędzony na kopiowaniu plików środowiska,
  3. tymczasowe użycie podwójnego dysku.

Występuje otwarty problem z żądaniem tej funkcji.


90
booooo dlaczego nie można zmienić nazwy conda env?
— Charlie Parker

6
aby zostawić trochę pracy tym, którzy rozwidlają conda i tym samym sprawiają, że rozumieją znacznie więcej na drodze: P: D
— Saravanabalagi Ramachandran

3
Innym sposobem jest sklonowanie środowiska, conda create --name new_name --clone old_namea następnie usunięcie starego.
— Y0da,

4
Słowo ostrzeżenia - próbowałem to zrobić i napotkałem dziwne błędy - mój .bashrcjuż nie działał, a próba uruchomienia pytestzakończy się niepowodzeniem, próba odniesienia się do usuniętego środowiska. Próbowałem nowych powłok i restartowałem bez powodzenia. Skończyło się na wysadzeniu nowego środowiska, a następnie po prostu zacznij od czystej instalacji. Wolniej, ale wydaje się, że teraz działa.
— dwanderson

3
@dwanderson +5000, ponieważ zamierzałem spróbować użyć tej odpowiedzi, ale zamiast tego po prostu ściągnę bandaidę i odtworzę od razu moją źle nazwaną env.
— bgoodr

13

Na podstawie pomocnego komentarza dwandersona udało mi się to zrobić w jednej linijce Bash:

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

Mój źle nazwany env to „env1”, a nowy, którego chcę sklonować, to „envpython2”.


1
W PackagesNotFoundError: The following packages are not available from current channelstym skrypcie wystąpił błąd . Ten skrypt prawdopodobnie działa tylko wtedy, gdy nie masz pakietów zainstalowanych za pomocą pip i które nie są dostępne w conda w istniejącym środowisku?
— Yuxuan Chen


-41

Wystarczy otworzyć folder „\ Anaconda \ envs” i zmienić jego nazwę.

Przed zmianą nazwy przed zmianą nazwy

Po zmianie nazwy po zmianie nazwy


13
Ta odpowiedź łamie jupyter. Jupyter zgłasza „nie znaleziono ścieżki” podczas próby uruchomienia jądra Pythona.
— MD004,

5
Istnieje ogromne ryzyko zniszczenia środowiska
— FabienP

2
nie rób tego.
— BenP

jednym z powodów jest to zły pomysł - w katalogu env / name znajdują się pliki zawierające bezwzględną ścieżkę do tego katalogu. Jeśli przeniesiesz katalog, ścieżka przestanie działać, ponieważ wskazuje na stary katalog, który już nie istnieje: 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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.