背景:
去年,作为学生项目的一部分,我一直在服务器上工作。现在正在更换服务器,不幸的是,我编写的一段代码未能通过测试。我没有访问服务器的权限(由于安全问题),但是好消息是我拥有安装在新服务器上的脚本以及程序包(及其版本)。因此,我决定将所有软件包安装在环境中的本地计算机上的服务器上,以模仿服务器。
问题:
由于并非所有软件包都可以使用conda(或需要指定通道),因此我决定创建一个conda环境并使用pip安装所有软件包。创建环境后,conda将安装一堆软件包(例如wheel
,pip
,ipython
,certifi
等)。但是我需要它们的某个(旧)版本。因此,我尝试用pip install -U <package_name>==<version>
覆盖它们。但是对于某些软件包,我最终得到了两个不同的版本:一个是conda在环境创建时安装的默认版本,另一个是pip。现在,当我运行代码时,我不确定使用的是哪个版本的软件包。所以我只想保留一个版本:通过pip安装的版本!
问题:
conda remove <package_name>
时的期望是,只会擦除安装了conda的软件包,但事实并非如此,而且都消失了!