[EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
> Changeset: 38b77760d8e2
> Author:    xdono
> Date:      2007-11-15 17:12 -0800
> URL:       http://hg.openjdk.java.net/jdk7/MASTER/hotspot/rev/38b77760d8e2
> 
> Added tag jdk7-b98 for changeset 280051e520a0
> 
> + .hgtags
> 
> Changeset: de9a59a5e8da
> Author:    xdono
> Date:      2007-11-15 17:21 -0800
> URL:       http://hg.openjdk.java.net/jdk7/MASTER/hotspot/rev/de9a59a5e8da
> 
> Added tag ea for changeset 38b77760d8e2
> 
> ! .hgtags

In this case, the tags represent the same thing, but they refer to
different changesets.  Seems like they should refer to the same
changeset.  In addition, you get two changesets instead of one for a
trivial operation.

Unfortunately, "hg tag" only allows one tag to be created per
invocation.  (Seems ripe for a fix, but I'm currently
python-illiterate.)  So for now I think this should be done by
updating .hgtags directly.  Here's a script that does the basics; it
needs error checking and polish, but you get the idea.

        #!/bin/ksh
        hg_short=`hg log -l 1 --template "{node|short}"`
        hg_node=`hg log -r $hg_short --template "{node}"`
        for tag
        do
                echo $hg_node "$tag"
        done >> .hgtags
        hg commit -m "Added tags $* for changeset $hg_short"

-John

Reply via email to