torkell: (Default)
Thomas ([personal profile] torkell) wrote2011-01-31 07:55 pm
Entry tags:

On Mercurial and tags

Today's discovery is that Mercurial is incapable of tagging a repository unless you've created a working directory for it. This is because Mercurial stores its tags in a ".hgtags" file in your working directory, so that it can version the tags file.

Of course, should you attempt to tag a repository without having a fully-updated working directory, Mercurial will fail with some nonsense about .hgtags having already been modified.

Ancillary discovery: should you typo when tagging a repository, the best way to recover appears to be to blow away your local repository and working directory and start again with a freshly-cloned one. Attempting to revert .hgtags doesn't appear to do anything.

Extra special discovery: it is impossible to tag a subset of a repository. Consequently, it is impossible to apply the same tag to different revisions of subsets of a repository. This is because you don't tag a file, or even a set of files - you tag a specific changeset.

[identity profile] olego.livejournal.com 2011-01-31 10:52 pm (UTC)(link)
You know, you haven't said much good about Mercurial... Is it really worth all the hassle and the awkwardness?