conda env export --from-history 不跟踪频道

conda env export --from-history does not track channels

我已经安装了来自不同渠道(-c rdkit rdkit-c pytorch pytorch)的几个软件包,但我只在 conda env export --from-history 的输出中的渠道下看到 defaults .有没有我遗漏的旗帜?

我确实看到了一个 --ignore-channels 选项,是不是 --from-history 以某种方式默认打开了 --ignore-channels

不幸的是,"explicit spec" 不会像这样跟踪对频道的临时更改。例如,如果您安装了

conda install -n my_env -c rdkit rdkit

它仅将 rdkit 视为显式规范。从技术上讲,以上内容实际上并未指定 rdkit 必须来自 rdkit 频道。相反,更准确的解释是:

With the channel rdkit prioritized, ensure that my_env has some version of rdkit installed.

我认为您所希望的(自动向 envs 添加频道)可能是一种有用的行为,但它可能会在 GitHub 问题上提出并提出预期的行为。

在显式规范中包含频道信息

同时,可以在规范中明确包含频道,例如,

conda install -n my_env rdkit::rdkit

这应该导致 rdkit::rdkit 被包含在显式规范中。即"install rdkit from the rdkit channel"。

向环境添加频道

要明确地将频道添加到 env,需要激活 env 并使用 conda config --env。例如,

conda activate my_env
conda config --env --add channels rdkit

请注意,如果需要更精确地确定优先级,还有其他选项,例如 --prepend--append