tag handling inconsistent
Ernie Rael
errael at raelity.com
Mon Nov 25 05:15:45 UTC 2019
On 11/24/2019 7:21 PM, Matthew Harbison wrote:
>> On Nov 24, 2019, at 7:58 PM, Ernie Rael <errael at raelity.com> wrote:
>>
>> (I didn't see a pointer to archive, so couldn't check if this has been discussed)
>>
>> I'm back, last time mq was the way to go, now I'm learning evolve, very cool.
>>
>> Before starting to play with evolve there was
>>
>> changeset: 48:0c485dd33116
>> summary: Added tag HAS_ANCIENTS for changeset 73352c15295d
>>
>> changeset: 47:73352c15295d
>> tag: HAS_ANCIENTS
>> summary: fixup pom for release to maven central.
>>
>> after my circuitous and playful actions there is
>>
>> changeset: 53:fc6cf2380bab
>> summary: Added tag HAS_ANCIENTS for changeset 12f9f63bb1a3
>>
>> changeset: 52:12f9f63bb1a3
>> tag: HAS_ANCIENT_NB_HACKS <<< tag/name my fixup and a manual
>> name change >>>
> I can’t tell if this is a literal copy/paste, but maybe you have merge conflict markers in the tags file? It’s smart enough to update the hashes in commit comments, which is why 53 references 52.
I have a repo pre-evolve, I can try to recreate this week if anybody
wants. (I did edit some lines out to shorten, but the original
changeset, referenced by the tag, was made obsolete when it was part of
a fold. My thought is that at that point .hgtags was not updated, even
though hash in commit comment was updated. It could be that evolve was
not sure if the tag was still valid because of the fold (in this case it
was OK because the tag was a boundary and the fold included it as the
proper endpoint).
Ah, there's a long screen history. After the fold, there is
changeset: 48:0c485dd33116
instability: orphan
summary: Added tag HAS_ANCIENTS for changeset 73352c15295d
changeset: 47:73352c15295d
tag: HAS_ANCIENTS
obsolete: rewritten using fold as 52:12f9f63bb1a3
summary: fixup pom for release to maven central.
The orphaned changeset is referencing the obsolete one. I then did
$ hg evolve -r 48
move:[48] Added tag HAS_ANCIENTS for changeset 73352c15295d
atop:[52] Maven update center. Basically all defaults. Add to pom
for maven central.
and got 53:52 as seen above, no merge issues AFAICT. Note: this modified
the comment to reference 52. And we can see
$ hg log -l8
changeset: 53:fc6cf2380bab
tag: tip
summary: Added tag HAS_ANCIENTS for changeset 12f9f63bb1a3
changeset: 52:12f9f63bb1a3
parent: 45:18dd487d7435
summary: Maven update center. Basically all defaults. Add to pom
for maven central.
...
changeset: 48:0c485dd33116
obsolete: rewritten using evolve as 53:fc6cf2380bab
summary: Added tag HAS_ANCIENTS for changeset 73352c15295d
changeset: 47:73352c15295d
tag: HAS_ANCIENTS
obsolete: rewritten using fold as 52:12f9f63bb1a3
summary: fixup pom for release to maven central.
The above indicates that .hgtags has not been updated. 47 has the
"tag:". QED
BTW, I used "hg evolve -r 48" here because I was getting a "cannot solve
instability" with 49. FYI, the instability was due to a file that had
been removed, but somehow was back. I think I caused it...
In any event, it would be nice if there was some complaint or indication
that the tag file was inconsistent, even "hg tags" didn't complain, it
just ignored HAS_ANCIENTS once it's target became hidden (or maybe just
obsolete).
>
> You might want to enable the experimental tag merge tool, so merging the tag file isn’t always manual.
I didn't see any reference to a tag merge tool on the extensions page.
-ernie
>
>> parent: 45:18dd487d7435
>> summary: Maven update center. Basically all defaults. Add to pom
>> for maven central.
>> Note that the summary of 53 references the 52 changeset after evolving, ok cool, that's the right spot
>>
>> Problem is that the .hgtags file was not updated. And "hg tags" didn't show anything for HAS_ANCIENTS though the name was still in the .hgtags file. (and I don't think 52 displayed a "tag:..." after evolution and before I manually fixed things up).
>>
>> -ernie
>>
>> _______________________________________________
>> Evolve-testers mailing list
>> Evolve-testers at mercurial-scm.org
>> https://www.mercurial-scm.org/mailman/listinfo/evolve-testers
>
>
More information about the Evolve-testers
mailing list