I have a Mercurial repository which has several tags. Those tags are used for release management and all contain version numbers. All tags are always added on the default branch. Here is an excerpt from my .hgtags
file:
55d0e566170f61935088c301ced8137b17868171 1.63
d898fc03cefa0becb880e0ad214d80aec22b79df 1.64
dfef02cc4a2f8e34ba9e34c782299708d8ec68b7 1.65
f0519f072992c39346b65332e444492fc5694e14 1.66
6537785f8093c0f3b55df0e41bb5586aa104bd9f 1.66.1
For some reason, the 1.66
tag does not show up in TortoiseHg and neither in hg tags
. I could make it show up by adding it again via TortoiseHg which creates the additional two lines in the file:
0000000000000000000000000000000000000000 1.66
f0519f072992c39346b65332e444492fc5694e14 1.66
As you can see, the hash of the newly created tag is still he same as the one of the old tag.
Why does the existing tag not show up? Clearing the .hg/cache
directory did not help.
It turns out that the same tag name was (mistakenly) previously used for a local tag on this repository, but subsequently deleted. Therefore, there was a line which deleted the tag in .hg/localtags
. It seems this overrides non-local tags as well. Removing the offending lines from the localtags
file fixed the problem.