在 setup.py 中指定私有 git 存储库的版本

Specify version for private git repos in setup.py

如何在我的 setup.py 文件中指定私有存储库的版本,以便仅使用该版本?

from setuptools import setup, find_packages
setup(
   name="my_module"
   version="1.0.4"
   install_requires=[
    "requests==2.20.0",
    "test @ git+ssh://git@xxxx/xxxxx/test.git",
   ],
   // etc. 
)

我的测试 git 项目是否必须具有任何属性才能读出版本?目前我只使用 setup.py

中的版本字段
from setuptools import find_packages, setup
setup(
  name="test",
  version="0.5.1",
  //etc.
)

不完全确定,但如果我没记错的话 install_requires 你可能会得到如下内容:

MyProject @ git://git.example.com/MyProject.git@v1.0

当必须从 git 存储库(或其他代码版本控制系统)安装项目时,您无法真正指向版本号当项目托管在索引上时(例如 PyPI),但下一个最好的事情是您可以指向特定的 git 标签(或 branch,或任何其他类型的类似参考,但 tag 可能是此用例的最佳选择)。

此外,我可能是错的,但是纯 setuptools 可能不支持这种表示法。这意味着您很可能无法使用 python setup.py developpython setup.py install,而应该使用 python -m pip install -e .python -m pip install .

参考文献: