root
est l'ancien nom (avant conda 4.4) pour l'environnement principal; après conda 4.4, il a été renommé en base
. source
Ce que 95% des gens veulent réellement
Dans la plupart des cas, ce que vous voulez faire lorsque vous dites que vous voulez mettre à jour Anaconda est d'exécuter la commande :
conda update --all
(Mais cela devrait être précédé de conda update -n base conda
ou simplement conda update conda
pour avoir la dernière version de conda
installée)
Ceci mettra à jour tous les packages dans l'environnement actuel à la dernière version -- en précisant que cela peut utiliser une version plus ancienne de certains packages pour satisfaire les contraintes de dépendance (il n'est souvent pas nécessaire de le faire et lorsque c'est nécessaire, le solveur de plan de packages fera de son mieux pour minimiser l'impact).
Cela doit être exécuté à partir de la ligne de commande, et la meilleure façon d'y accéder est depuis Anaconda Navigator, puis l'onglet "Environnements", puis cliquez sur le triangle à côté de l'environnement base
, en choisissant "Ouvrir le terminal" :
Cette opération mettra à jour uniquement l'environnement sélectionné (dans ce cas, l'environnement base
). Si vous avez d'autres environnements que vous souhaitez mettre à jour, vous pouvez répéter le processus ci-dessus, mais d'abord cliquez sur l'environnement. Lorsqu'il est sélectionné, il y a un indicateur triangulaire sur la droite (voir l'image ci-dessus, étape 3). Ou depuis la ligne de commande, vous pouvez fournir le nom de l'environnement (-n nom_env
) ou le chemin (-p /chemin/vers/env
), par exemple pour mettre à jour votre environnement dspyr
à partir de la capture d'écran ci-dessus :
conda update -n dspyr --all
Mettre à jour des packages individuels
Si vous êtes seulement intéressé à mettre à jour un package individuel, il suffit de cliquer sur la flèche bleue ou le numéro de version bleu dans Navigator, par exemple pour astroid
ou astropy
dans la capture d'écran ci-dessus, et cela marquera ces packages pour une mise à jour. Lorsque vous avez terminé, vous devez cliquer sur le bouton "Appliquer" :
Ou depuis la ligne de commande :
conda update astroid astropy
Mettre à jour uniquement les packages dans la Distribution standard Anaconda
Si vous ne vous souciez pas des versions des packages et que vous voulez simplement "le dernier ensemble de tous les packages dans la Distribution standard Anaconda, tant qu'ils fonctionnent ensemble", alors vous devriez jeter un œil à ce gist.
Pourquoi mettre à jour le package Anaconda est presque toujours une mauvaise idée
Dans la plupart des cas, mettre à jour le package Anaconda dans la liste des packages aura un résultat surprenant : vous pouvez en fait revenir à une version antérieure de nombreux packages (en fait, c'est probable si la version est indiquée comme custom
). Le gist ci-dessus fournit des détails.
Tirer parti des environnements conda
Votre environnement base
n'est probablement pas un bon endroit pour essayer de gérer un ensemble exact de packages : il s'agira d'un espace de travail dynamique avec de nouveaux packages installés et des packages mis à jour de manière aléatoire. Si vous avez besoin d'un ensemble exact de packages, créez alors un environnement conda pour les contenir. Grâce à la cache de packages conda et à la manière dont le lien de fichiers est utilisé, cela est généralement i) rapide et ii) consomme très peu d'espace disque supplémentaire. Par exemple :
conda create -n mo_env_special -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
La documentation de conda a plus de détails et d'exemples.
pip, PyPI et setuptools ?
Rien de tout cela ne vous aidera à mettre à jour les packages installés à partir de PyPI via pip
ou tous les packages installés à l'aide de python setup.py install
. La commande conda list
vous donnera des indications sur les packages Python basés sur pip que vous avez dans un environnement, mais elle ne fera rien de spécial pour les mettre à jour.
Utilisation commerciale d'Anaconda ou Anaconda Enterprise
C'est à peu près la même histoire, à l'exception que vous ne pourrez peut-être pas mettre à jour l'environnement base
s'il a été installé par quelqu'un d'autre (disons à /opt/anaconda/latest
). Si vous n'êtes pas en mesure de mettre à jour les environnements que vous utilisez, vous devriez être en mesure de les cloner puis de les mettre à jour :
conda create -n mon_env --clone base
conda update -n mon_env --all
6 votes
La plupart des réponses suggèrent
conda update [-n root] -v anaconda
, mais cela propose de DOWNGRADE monpython: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0
. Semble très cassé.