我通过将它们应用于夜间构建来使用标记。然后,我想使用describe --tags --match <latest tag>
的输出来告诉我,每晚构建的图像有多远。这是用于QA测试的。
我只是在一个比当前标记更老的克隆中遇到了一个错误。我运行了git提取标记,所以我在git标记输出中看到了标记,但是当我运行git describe --tags --match <tagname>
时,我得到了fatal: No tags can describe <head sha1 version number>
。此时,我无法执行git拉操作来更新工作区。为什么会发生这种情况?有解决办法吗?非常感谢
发布于 2018-08-07 12:43:03
另一种解释是,存储库是使用depth=xyz
设置(其中的特拉维斯默认这么做)克隆的。在这种情况下,历史记录可能会在最新标签之前被切断。
从技术上讲,使用depth=xyz
进行克隆会创建一个浅浅的克隆,其中包含描述在哪里切断历史的条目。然后,当git describe
遍历历史记录时,它可能会到达那个断点,并停止搜索标记。如果您在使用git fetch --tags
进行初始浅克隆之后手动获取标记,甚至会发生这种情况。
如果这是问题所在,您需要unshallow
存储库(或者首先创建一个完整(足够)的克隆)。请参阅如何将Git浅表克隆转换为完整克隆?以解决问题。
https://stackoverflow.com/questions/6445148
复制相似问题