Comment mettre à jour un environnement Conda existant avec A. fichier yml
cela a été demandé ici mais n'a jamais répondu.
comment un environnement conda préexistant peut-il être mis à jour avec un autre?fichier yml. Ceci est extrêmement utile lorsque vous travaillez sur des projets qui ont plusieurs fichiers d'exigences, c.-à-d. base.yml, local.yml, production.yml
, etc.
Par exemple, ci-dessous est un base.yml
le fichier a conda-forge, conda, et pip paquets:
de base.yml
name: myenv
channels:
- conda-forge
dependencies:
- django=1.10.5
- pip:
- django-crispy-forms==1.6.1
L'environnement réel est créé avec:
conda env create -f base.yml
.
plus Tard sur, des paquets supplémentaires doivent être ajoutés à base.yml
. Un autre fichier, dites local.yml
, doit importer ces mises à jour.
les tentatives précédentes pour accomplir ceci incluent:
création d'un local.yml
le fichier avec une importation définition:
channels:
dependencies:
- pip:
- boto3==1.4.4
imports:
- requirements/base.
et ensuite exécuter la commande:
conda install -f local.yml
.
Cela ne fonctionne pas. Toutes les pensées?
2 réponses
Essayez d'utiliser conda env mise à jour:
source activate myenv
conda env update -f=local.yml
la réponse d'alkamid est sur les bonnes lignes, mais J'ai trouvé que Conda n'installe pas de nouvelles dépendances si l'environnement est déjà actif. Désactiver l'environnement résout d'abord ceci:
source deactivate;
conda env update -f whatever.yml;
source activate my_environment_name; # Must be AFTER the conda env update line!