我有一个项目,我通过git
标签管理版本。然后,我用来setuptools_scm
在我的文件中获取这些信息,setup.py
并生成一个文件 ( _version.py
),该文件在为pip
.
此文件未被跟踪,git
因为:
- 它具有相同的信息,可以通过以下方式收集
git
- 它将创建一个循环情况,其中构建轮子将修改更改源的版本并生成新版本
现在,当我构建文档时,从中获取这个版本变得很自然,_version.py
这一切都在本地运行良好。
但是,当我尝试在 ReadTheDocs 中执行此操作时,文档的构建失败,因为_version.py
没有被跟踪git
,因此 ReadTheDocs 在从存储库中获取源时找不到它。
编辑:我尝试使用副本中提出的方法,这与文档中指示的方法相同setuptools_scm
,即使用 in docs/conf.py
:
from pkg_resources import get_distribution
__version__ = get_distribution('numeral').version
... # I use __version__ to define Sphinx variables
但我得到:
pkg_resources.DistributionNotFound:未找到“数字”分布,应用程序需要它
(同样,在本地构建文档可以正常工作。)
如果不在两个地方维护版本号,我怎么能解决这个问题?