两者之间有什么显著的区别吗
pip install -e /path/to/mypackage
那么setuptools变体呢?
python /path/to/mypackage/setup.py develop
两者之间有什么显著的区别吗
pip install -e /path/to/mypackage
那么setuptools变体呢?
python /path/to/mypackage/setup.py develop
尽量避免直接调用setup.py,它不会正确地告诉pip您已经安装了软件包。
使用pip安装-e:
对于本地项目,“SomeProject。创建“Egg-info”目录 相对于项目路径。这是仅仅使用的一个优点 py开发,它创建了直接相对于 当前工作目录。
:文档
还要阅读setuptools的文档。
还有一个区别:pip install -e使用wheel while Python setup.py develop 不使用它。
使用install,您可以通过使用 PIP install -e /path/to/package——no-use wheel
更多关于轮子的信息:python轮子
另一个可能有利于pip install -e的区别是,如果你的项目在setup.py中的install_requires中有依赖项,那么pip install -e。使用pip安装依赖项,而python setup.py develop可以使用easy_install安装,并可能导致上面提到的re: 'egg-info'问题。当install-requires使用带有自定义git url的dependency_links并附带egg标识符时,这可能特别令人讨厌。
还有一个区别:当你为一个被认为是预发行版的版本运行python setup.py development时(可能是因为你在没有签出发行版的情况下从一个git克隆版本运行它),那么你将启用安装你的依赖项的预发行版。另一方面,使用pip install -editable,如果你想要这些预发布版本,你就必须显式地传递-pre。
(请参阅意外使用预发布版的CI日志,并将其与固定版本进行比较。)