即使在运行Debian稳定版的计算机上,我也使用Anaconda获取Python 3.7。对于我开发的每个项目,我都有一个单独的Conda环境。
自然,我还安装了在同一Anaconda环境中运行和开发项目所需的所有软件包。可能是Pandas和scikit-learn,也可能是flake8和ipdb3。
开发需求(以及它们隐含的所有需求)列表极大地淹没了Anaconda环境。我想将它们从任何部署中自动排除,仅安装语义上需要的项目。对于pip
,现在存在一个名为pipenv
的解决方案,它增加了对此用例的支持。
现在,我可以在pipenv
中使用conda
,但是接下来我必须编排两个工具。而且,这不能解决仅在Anaconda中可用的软件包的问题。
是否存在conda
支持部署和开发环境分离的某种方式?一种自动跟踪必须部署哪些内容以及应从部署中排除哪些内容的方法?