We just started using hg, and we use basic tags for common modules in our system. I have a few questions about how tags work.
(# 1) When I add a tag using the following command, does it automatically check the .hgtags file for me?
hg tag MY_TAG
When I add a tag for the first time, it adds a line to the .hgtags file. When I make the -f (force) command in the tag command, it adds another record to the file. Then, when I delete it, it adds 2 more lines to the .hgtags file. Ultimately, my file looks like this:
af9e9bf4cf004a7fab4f911e95d1002579fd851a MY_TAG //from initial tag
af9e9bf4cf004a7fab4f911e95d1002579fd851a MY_TAG //from delete (1/2)
0000000000000000000000000000000000000000 MY_TAG //from delete (2/2)
4611114976f02dd0d4f8ec9e84266dcea161cd3f MY_TAG //from tag after pull
0426c9e6e0ccf01e6d18d85420466d1edd1bff1f MY_TAG //from forced tag
(# 2) Why does he continue to add lines to the .hgtags file? When I make the base tag, I really need to have a single entry in the file. Should I take care of this bloat? Should I manually manage the .hgtags file this way?
(# 3) Also, should the delete lines remain continuous in the file?
(# 4) Is the file read from top to bottom, or does Mercurial actually find the last set of changes and use it when moving to a tag?
source
share