当我在分支上运行bzr tags
命令时,我经常会看到一些没有修订号的标签。它看起来像一个问号。例如,当我运行此命令时:
bzr tags -d lp:~zaber/openobject-client/main
标签5.0.7没有修订号:
5.0.0 930
5.0.0-2 933
5.0.0-3 938
5.0.0-alpha 719
5.0.0-rc1 771
5.0.0-rc1.1 776
5.0.0-rc2 830
5.0.0-rc3 858
5.0.1 946.1.19
5.0.2 976
5.0.3 983
5.0.4 986
5.0.5 993
5.0.6 1000
5.0.7 ?
5.0.7rc1 1022
5.0.7rc2 1042
当我为多个本地分支机构共享存储库时,这种情况可能会更频繁发生,但我不确定。
答案 0 :(得分:3)
这些标签对于bzr是已知的(在某些拉动或合并操作中从另一个分支中获取或合并),但在您的历史记录中不存在相应的修订(未合并到您的分支)。
严格地说这是一个错误,你可以在Launchpad.net上的bzr bugtracker中找到它。
您可以对此类标记做些什么:
bzr tag --delete XXX
bzr merge -r tag:YYY lp:XXX
bzr tags --show-ids
答案 1 :(得分:2)
根据bialix建议,使用bzr tag --delete XXX
删除代码有效。此外,删除结账时的标签也会删除主分支上的标签。 (我猜这与提交工作的方式并行,但它仍然让我感到惊讶。)有时合并会带来一堆破碎的标签,所以这里有一个gawk命令从本地分支中删除所有未知标签:
bzr tags | gawk '/\?/ { system("bzr tag --delete " $1) }'