I have some tags:
❯ hg tags
tip 2432:ed019577d04b
staging 2430:8dfb436fbe46
production 2408:8b016388cfec
Now I need to make a quick fix to production, so I hg up production and it takes me back to 8b016388cfec as expected.
hg tags reveals that production still points to 2408:8b016388cfec but ❯ cat .hgtags | grep 8b016388cfec yields no results because I'm one commit before the tag existed.
So what is the actual Mercurial algorithm for determining hg tags? It's not merely parsing the .hgtags file.