繁体   English   中英

python setup.py sdist 错误 此项目的版本控制需要 sdist tarball,或访问上游 git 存储库

[英]python setup.py sdist error Versioning for this project requires either an sdist tarball, or access to an upstream git repository

github下载的 tosca-parser ,当使用python setup.py develop时,它抱怨:此项目的版本控制需要 sdist tarball,或访问上游 ZBA9F11ECC3497D6993B.933FDC2 存储库所以我改用python setup.py sdist ,错误是一样的:

ERROR:root:Error parsing
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/pbr/core.py", line 96, in pbr
    attrs = util.cfg_to_args(path, dist.script_args)
  File "/usr/lib/python2.7/site-packages/pbr/util.py", line 270, in cfg_to_args
    pbr.hooks.setup_hook(config)
  File "/usr/lib/python2.7/site-packages/pbr/hooks/__init__.py", line 25, in setup_hook
    metadata_config.run()
  File "/usr/lib/python2.7/site-packages/pbr/hooks/base.py", line 27, in run
    self.hook()
  File "/usr/lib/python2.7/site-packages/pbr/hooks/metadata.py", line 26, in hook
    self.config['name'], self.config.get('version', None))
  File "/usr/lib/python2.7/site-packages/pbr/packaging.py", line 874, in get_version
    name=package_name))
Exception: Versioning for this project requires either an sdist tarball, or access to an upstream git repository. It's also possible that there is a mismatch between the package name in setup.cfg and the argument given to pbr.version.VersionInfo. Project name tosca-parser was given, but was not able to be found.
error in setup command: Error parsing /home/tiina/tosca/tosca-parser-master/setup.cfg: Exception: Versioning for this project requires either an sdist tarball, or access to an upstream git repository. It's also possible that there is a mismatch between the package name in setup.cfg and the argument given to pbr.version.VersionInfo. Project name tosca-parser was given, but was not able to be found.

我在git init之后运行相同的命令,然后错误就消失了。 我不明白的是它从哪里需要上游 git 存储库?

禁用 pbr 的所有版本计算逻辑设置PBR_VERSION

$ export PBR_VERSION=1.2.3 
$ python setup.py sdist

或在一条线上

$ PBR_VERSION=1.2.3 python setup.py sdist

根据pbr 文档

pbr,当在 git 存储库中运行时,从 git 标签派生 package 的版本。 当在带有适当 egg-info 目录的 tarball 中运行时,它会很高兴地从中提取版本。 所以在大多数情况下,package 的维护者应该不需要关心。 但是,如果您正在做类似保留 git 存储库与源代码和包装混合的操作,这会导致 pbr 对它是否在自己的 git 存储库中感到困惑,您可以设置PBR_VERSION

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM