我使用的是詹金斯(Jenkins)的Git插件,也使用道格拉斯·克莱格(Douglas Creager)的get_git_version脚本。这使用git describe来为python模块获取一些明智的版本。通常,这会创建类似的东西0.1-11-g80fe130,但是在詹金斯身上,我得到:
0.1-11-g80fe130
+ git describe fatal: No names found, cannot describe anything.
我已配置插件不通过“跳过内部标签”提供自己的标签。
像在这个有关从jenkins推送的问题中那样,对master分支进行额外的检查无济于事。
关于标签(如“ 本周Git技巧:标签 ”中所述)
如果未找到带注释的标签,则它将打印fatal: No names found, cannot describe anything。 要允许describe使用非注释标签,请运行git describe --tags。 也可以使用来针对分支描述它git describe --all,尽管只有在远程知道该分支的情况下才有意义。
fatal: No names found, cannot describe anything
git describe --tags
git describe --all
因此,您当前使用Git插件执行简单gitdescribe的存储库中可能不包含任何带注释的标签(这说明了为什么签出分支的尖端不能解决问题:这不是关于分离头情况)
您需要克隆存储库,包括标签。
实际上,OP Jasper Van Den Bosch报告:
我没有正确推送标签
没有推送标签,这意味着詹金斯在更新自己的克隆文件时没有获得这些标签,这意味着标签git describe无法正常工作。
git describe