git 标签不再被识别
git tags are not recognized anymore
我的 git 存储库出现了一个奇怪的问题。它突然 "stopped" 使用标签。我可以创建标签,我可以列出标签。我什至可以使用 git checkout $tag
或 git logs $tag
。但是当使用 git describe --exact-match
标签不再被检测到?这目前打破了我的管道,因为 master 上的标记提交似乎没有标记到 git 本身?一周前它运行完美。
$ git checkout master
$ git tag my-test-tag
$ git describe --exact-match
fatal: no tag exactly matches '4b2aa1dcf70eaf61640e6a983df82e1ffe3a5812'
我已经尝试了 运行 git fsck --full
,它只修复了一些悬而未决的提交,这对我来说看起来不错(因为我做了很多变基)。
另一件有趣的事:工具 gitg
没有显示这些 "new" 提交的任何历史记录。虽然 "old" 提交一切都按预期工作。
有人知道这是怎么回事吗?
在 3 台机器上测试,所有 运行 git 版本 2.17.1.
git tag
默认创建一个非注释标签;
使用 -a
来改变它。
git describe
默认只引用带注释的标签;
使用 --all
或 --tags
来改变它。
这个回答原来是 by torek
我的 git 存储库出现了一个奇怪的问题。它突然 "stopped" 使用标签。我可以创建标签,我可以列出标签。我什至可以使用 git checkout $tag
或 git logs $tag
。但是当使用 git describe --exact-match
标签不再被检测到?这目前打破了我的管道,因为 master 上的标记提交似乎没有标记到 git 本身?一周前它运行完美。
$ git checkout master
$ git tag my-test-tag
$ git describe --exact-match
fatal: no tag exactly matches '4b2aa1dcf70eaf61640e6a983df82e1ffe3a5812'
我已经尝试了 运行 git fsck --full
,它只修复了一些悬而未决的提交,这对我来说看起来不错(因为我做了很多变基)。
另一件有趣的事:工具 gitg
没有显示这些 "new" 提交的任何历史记录。虽然 "old" 提交一切都按预期工作。
有人知道这是怎么回事吗?
在 3 台机器上测试,所有 运行 git 版本 2.17.1.
git tag
默认创建一个非注释标签;
使用 -a
来改变它。
git describe
默认只引用带注释的标签;
使用 --all
或 --tags
来改变它。
这个回答原来是