我如何实际创建使用git repo标签进行版本控制,使用setuptools和的python软件包的发行版/发行版pbr?
setuptools
pbr
有关所需的基本设置和配置,有很多信息:
但是有关如何实际创建发行版的简单信息在哪里?
即我正在寻找找到带有版本信息的git标记并将其拉入配置信息的任何命令,以便可以分发具有该新版本信息的源,并且可以使用类似的方法从脚本中发现版本信息在这个答案中描述。
我正在开发一个仅通过git repo而不通过 PyPi 分发给其他开发人员的项目。该项目将使用作为可执行文件发布给用户pyinstaller,因此此程序包分发仅用于几个关键目的:
pyinstaller
由于setuptools文档专注于使用 PyPi 和设置完全可分发和可重用的软件包pip,并且pbr文档仅真正告诉您如何修改setuptools配置以使用pbr,因此我找不到有关如何仅运行分发/发布过程的信息。
pip
我确定它存在于文档中的某个位置,但是在几次错误的开始之后,我要在这里询问。在我看来,到处都有暗示,每个人要么知道如何做到这一点,要么就神奇地发生在过程的一部分中。
我只是想念明显的东西吗?
更新:
根据sinoroc的回答,看来我需要研究开发模式的安装。即开发该项目的任何人都将从git克隆,然后使用setuptools开发安装模式进行安装。
这不是原始问题的直接一部分,而是隐含的,我相信同样情况下的人们也会对此感兴趣(我无法轻易找到的信息)。
有关他的更新某些元数据以及通过此文档链接可以在“开发模式”下工作的更多信息,请参见他的回答。setuptools
简而言之:
python3 setup.py sdist
python3 setup.py bdist_wheel
如何实际使用setuptools和pbr创建使用git repo标签进行版本控制的python软件包的发行版/发行版?
使用 setuptools 创建(使用源代码和滚轮)Python软件包的常用命令是:python3 setup.py sdist和python3 setup.py bdist_wheel。然后dist,默认情况下可以在目录中找到发行版。
dist
由于setuptools文档专注于通过PyPi和pip设置完全可分发和可重用的软件包,而pbr文档仅真正告诉您如何修改setuptools配置以使用pbr,因此我找不到有关如何仅运行发行版/发行版的信息处理。
确实, setuptools 并未对此进行说明。它仅记录了与的差异distutils,确实令人困惑。请参阅下面的实际文档…
distutils
更新资料
由于您不打算在索引(例如 PyPI) 上发布项目的发行版,而是计划使用 pyinstaller ,因此您实际上很可能会忽略诸如和的 setuptools 命令。sdist``bdist_wheel
sdist``bdist_wheel
您仍然可能想在开发阶段了解这些命令:
python3 setup.py --version
python3 setup.py --fullname
python3 setup.py develop
pip install --editable .
egg-link
python3 setup.py install
现在,我不知道一旦转到 pyinstaller, 所有这些将如何工作。特别是因为您提到过要从脚本中发现 元信息 (例如版本号)。使用 setuptools 的技术pkg_resources可能无法在 pyinstaller 上下文中使用。
pkg_resources