W większości przypadków to, co chcesz zrobić mówiąc, że chcesz zaktualizować Anacondę, to wykonać polecenie:
conda update --all
(Ale to powinno być poprzedzone przez conda update -n root conda
abyś miał zainstalowaną najnowszą wersję conda
)
To zaktualizuje wszystkie pakiety w bieżącym środowisku do najnowszej wersji -- z drobnym druczkiem, że może użyć starszej wersji niektórych pakietów w celu spełnienia ograniczeń zależności (często nie będzie to'konieczne, a kiedy jest to konieczne, solver planu pakietów zrobi wszystko co w jego mocy aby zminimalizować wpływ).
Musi to być wykonane z linii poleceń, a najlepszym sposobem aby się tam dostać jest Anaconda Navigator, następnie zakładka "Środowiska", następnie klikamy na trójkąt obok środowiska root
, wybierając "Otwórz Terminal":
Ta operacja zaktualizuje tylko jedno wybrane środowisko (w tym przypadku środowisko root
). Jeśli masz inne środowiska, które'chciałbyś zaktualizować, możesz powtórzyć powyższy proces, ale najpierw kliknij na środowisko. Gdy jest ono wybrane, po prawej stronie pojawi się trójkątny znacznik (patrz obrazek powyżej, krok 3). Lub z linii poleceń możesz podać nazwę środowiska (-n envname
) lub ścieżkę (-p /path/to/env
), na przykład aby zaktualizować środowisko dspyr
z powyższego zrzutu ekranu:
conda update -n dspyr --all
Jeśli jesteś zainteresowany tylko aktualizacją pojedynczego pakietu, po prostu kliknij na niebieską strzałkę lub niebieski numer wersji w Navigatorze, np. dla astroid
lub astropy
na powyższym zrzucie ekranu, a to oznaczy te pakiety do aktualizacji. Kiedy skończysz, musisz kliknąć przycisk "Zastosuj":
Lub z linii poleceń:
conda update astroid astropy
Jeśli nie dbasz o wersje pakietów i po prostu chcesz "najnowszy zestaw wszystkich pakietów w standardowej dystrybucji Anacondy, tak długo jak działają razem", to powinieneś spojrzeć na ten gist.
W większości przypadków aktualizacja pakietu Anacondy na liście pakietów będzie miała zaskakujący rezultat: możesz w rzeczywistości zmniejszyć wiele pakietów (w rzeczywistości jest to prawdopodobne, jeśli wskazuje wersję jako custom
). Powyższy gist dostarcza szczegółów.
Twoje środowisko root
prawdopodobnie nie jest dobrym miejscem na próbę zarządzania dokładnym zestawem pakietów: będzie to dynamiczna przestrzeń robocza z nowymi pakietami zainstalowanymi i pakietami losowo aktualizowanymi. Jeśli potrzebujesz dokładnego zestawu pakietów, stwórz środowisko conda aby je przechowywać. Dzięki conda cache pakietów i sposobowi w jaki używane jest łączenie plików, robienie tego jest zazwyczaj i) szybkie i ii) zużywa bardzo mało dodatkowego miejsca na dysku. Np.
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
Dokumentacja conda zawiera więcej szczegółów i przykładów.
Nic z tego nie pomoże w aktualizacji pakietów, które zostały zainstalowane z PyPI przez pip
lub jakichkolwiek pakietów zainstalowanych przy użyciu python setup.py install
. Lista conda
da ci kilka wskazówek na temat pakietów Pythona opartych na pip, które masz w środowisku, ale nie zrobi nic specjalnego, aby je zaktualizować.
Jest to prawie dokładnie ta sama historia, z wyjątkiem tego, że możesz nie być w stanie zaktualizować środowiska root
jeśli zostało ono zainstalowane przez kogoś innego (powiedzmy do /opt/anaconda/latest
). Jeśli nie jesteś w stanie zaktualizować środowisk, których używasz, powinieneś być w stanie sklonować je, a następnie zaktualizować:
conda create -n myenv --clone root
conda update -n myenv --all
Jeśli próbujesz zaktualizować swoją wersję programu Anaconda do nowej, zauważysz, że uruchomienie nowego instalatora nie zadziała, ponieważ katalog instalacyjny nie jest pusty.
Powinieneś więc użyć conda do aktualizacji, jak to opisano w oficjalnych dokumentach:
conda update conda
conda update anaconda
Zapobiega to wystąpieniu błędu:
ERROR conda.core.link:_execute(502): Wystąpił błąd podczas odinstalowywania pakietu 'defaults::conda-4.5.4-py36_0'. PermissionError(13, 'Access is denied')
Otwórz "command lub conda prompt" i uruchom:
conda update conda
conda update anaconda
Dobrym pomysłem jest dwukrotne uruchomienie obu poleceń (jedno po drugim), aby upewnić się, że wszystkie podstawowe pliki zostały zaktualizowane.
To powinno umieścić cię z powrotem na najnowszym 'releases', który zawiera pakiety, które są wybrane przez ludzi w Continuum, aby dobrze ze sobą współpracować.
Jeśli chcesz ostatnią wersję każdego pakietu uruchom (może to prowadzić do niestabilnego środowiska):
conda update --all
Mam nadzieję, że to pomoże.
Źródła: