我正在管理一个python项目,该项目可以两种不同的版本(“完整”和“轻量”)发布,例如my-project
和my-project-lw
。两者都使用相同的顶级名称,例如myproject
。我有一个脚本,该脚本切断了项目的“繁重”部分,并构建了两个具有依赖关系的可轮转安装的归档文件(轻量级文件的数量少得多)。一切正常,我可以用轮子安装它们。
现在,我要确保用户不会同时安装两个软件包。理想情况下,我希望pip在安装另一个时要卸载一个,或者至少在存在另一个时失败(这样用户就必须手动卸载当前版本)。
否则,当您安装my-project
软件包时,它会安装到/lib/python3.6/site-packages/myproject
中,然后当您安装my-project-lw
软件包时,它会覆盖同一文件夹中的文件,因此您会得到一个奇怪的混合文件当某些文件来自“完整”文件,而某些文件来自“ lightweigth”文件,则不好。
是否有一种方法可以指定反依赖性?要以某种方式将它们标记为互斥的?谢谢!