how to finish working on a topic

Danek Duvall duvall at comfychair.org
Thu Jan 4 20:25:19 UTC 2024


On Thu, Jan 04, 2024 at 09:07:08PM +0100, Christophe de Vienne wrote:

>I wouldn't keep drafts for too long, but if you really need to remove 
>the topic from a changeset, you can do as the '--help' suggests:
>
>
>    Clear topic on existing topiced revisions:
>
>      hg topics --rev <related revset> --clear

That was the thing I did which put all of the default branch into the topic.  I 
didn't specify the revset, though; I assumed that it would simply clear the 
topic from the changesets in the current topic.  I'll give this a shot.

Thanks,
Danek

>Cheers
>
>Christophe
>
>Le 04/01/2024 à 20:57, Danek Duvall a écrit :
>>On Thu, Jan 04, 2024 at 08:01:47PM +0100, Christophe de Vienne wrote:
>>
>>>Hello Danek,
>>>
>>>The topic will "disappear" as soon as you change the changeset 
>>>phase to "public". The information is still in the changeset but 
>>>will not be displayed anymore.
>>
>>Yes; that's exactly the thing I don't want to do.  Is it possible 
>>that finishing without moving the phase to public could be 
>>supported?  I'd love to use topics when I can, but I think this is a 
>>must-have for me.
>>
>>>A typical finish of a topic is a rebase (with collapse if you 
>>>prefer) on the default branch, then phase.
>>
>>Okay, good to know; thanks.
>>
>>>Note that "rebase" from within a topic will rebase it on its 
>>>branch head. So most of the time it looks like "hg up mytopic ; hg 
>>>rebase ; hg phase -p"
>>
>>I'd discovered that; it's a nice shortcut.
>>
>>Thanks,
>>Danek
>>
>>>Cheers,
>>>
>>>Christophe
>>>
>>>Le 04/01/2024 à 19:38, Danek Duvall a écrit :
>>>>I haven't had the opportunity to play much with topics (or 
>>>>mercurial, for that matter, over the past few years), but I'm 
>>>>playing with it in a private repo.  It's completely local (no 
>>>>parent repo), and I'm keeping all changesets in the draft phase 
>>>>for now.  I'm running 11.1.0 of the evolve extension, 6.6.1 of 
>>>>hg.
>>>>
>>>>I'm done working on my topic, and I want to "merge" it into the 
>>>>default branch, collapsing the changesets and removing the 
>>>>topic, but I'm not sure how.  I don't see anything about 
>>>>"finishing" in the topics help, and the only thing in the 
>>>>tutorial page about this I could find says that "the topic 
>>>>information will disappear when we publish the changesets", 
>>>>which is something I don't want to do.
>>>>
>>>>I did a `rebase --collapse`, which gave me the topology I 
>>>>wanted, but didn't get rid of the topic information.  I tried 
>>>>then `topics --clear`, but now `hg stack` gives me all of the 
>>>>changesets in the `default` branch and `hg topic` still shows 
>>>>the topic, but not active despite the working directory parent 
>>>>being the one changeset that's still in that topic.  This seems 
>>>>like a bug, or at least behavior I can't explain.
>>>>
>>>>(As an aside, the fact that `hg stack` emits nearly 300 lines 
>>>>makes me want a `-l` option for it.)
>>>>
>>>>Did I just miss something in the docs on what to do here?  Or is 
>>>>publishing the only way forward?  I can confirm that `hg phase 
>>>>-p` hides the topic, but if I force the phase back to draft, the 
>>>>topic reappears, so it wasn't removed.  I guess the information 
>>>>isn't actually removed until information is exchanged with 
>>>>another repo?
>>>>
>>>>Thanks,
>>>>Danek
>>>>_______________________________________________
>>>>Evolve-testers mailing list
>>>>Evolve-testers at lists.mercurial-scm.org
>>>>https://lists.mercurial-scm.org/mailman/listinfo/mercurial-evolve-testers
>>>>
>>
>>>_______________________________________________
>>>Evolve-testers mailing list
>>>Evolve-testers at lists.mercurial-scm.org
>>>https://lists.mercurial-scm.org/mailman/listinfo/mercurial-evolve-testers
>>>
>>


More information about the Evolve-testers mailing list