Rubygems使用两个文件Gemfile
和Gemfile.lock
。前者指定当前项目的依赖关系;后者指定实际安装哪些包以满足这些依赖关系。通过这种方式,您可以获得可重现的环境(在Gemfile.lock
中),同时能够更改项目依赖关系(在Gemfile
中)而无需担心。
据我所知,康达的environment.yml
功能与Gemfile.lock
相似。您可以手动安装一堆软件包,并使用environment.yml
在另一台计算机上重现该环境。但是删除库很困难,因为我无法判断environment.yml
中列出的库是通过显式安装添加的,还是作为我安装的其他软件包的依赖项添加的。
所以我希望有一个自动管理的文件,它只列出我的项目的依赖项,并让Conda生成一个满足这些依赖项的环境。 Conda可以实现吗?
(或者,还有其他一些方法可以让Anaconda的重度用户解决这个问题吗?)