How can one change the name of a tag?
Like what @matt-ellen has said, but in reverse. Because I like to be sure the revision is tagged properly before I delete the old tag.
Here I create an example of a repo with 4 revisions.
- View the log
- View the tags (none, and tip)
- Create a tag at revision #2 (using the hash)
- View tags (now there is one, and tip)
- Create new tag name
- View tags (now there are two, and tip)
- Remove bad tag name
- View tags (now there is one, and tip)
Example:
$ hg log
changeset: 3:271cb2836c23
user: user <[email protected]>
date: Sat Mar 01 13:49:55 2014 -0600
summary: Very important things.
changeset: 2:3c953ee62faf
user: user <[email protected]>
date: Wed Feb 26 00:17:55 2014 -0600
summary: Did some changes.
changeset: 1:54e2275eed1e
user: user <[email protected]>
date: Tue Feb 25 01:34:31 2014 -0600
summary: So, lots of things here.
changeset: 0:3f3e1aee4e14
user: user <[email protected]>
date: Sat Feb 22 00:42:29 2014 -0600
summary: Inital project checkin.
$ hg tags
tip 3:271cb2836c23
$ hg tag -r 3c953ee62faf release_123
$ hg tags
tip 3:271cb2836c23
release_123 2:3c953ee62faf
$ hg tag -r 3c953ee62faf release_124
$ hg tags
tip 3:271cb2836c23
release_123 2:3c953ee62faf
release_124 2:3c953ee62faf
$ hg tag --remove release_123
$ hg tags
tip 3:271cb2836c23
release_124 2:3c953ee62faf
I would do it by removing the tag and then adding a new tag with the new name
The Mercurial tag wiki explains how to remove a tag:
How do I remove a tag?
Either by
hg tag --remove tagname
(this being the nearest equivalent to
cvs tag -d
)
adding
tagname 0000000000000000000000000000000000000000
to the end of.hgtags
removing all references to
tagname
in.hgtags
(but this might confuse the multiple-head tag collision resolution algorithm)
You should be able to edit regular tags in the .hgtags
file (and commit it)
A "regular" tag (with no special specifier) is revision controlled, does propagate with other changes, and lives in the
.hgtags
file in a repository.
This old thread mentions you need to do this in all HEADS of a repo though.