how to finish working on a topic

Christophe de Vienne christophe at cdevienne.info
Thu Jan 4 20:07:08 UTC 2024


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

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 
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-evolve-testers/attachments/20240104/ca58c186/attachment-0001.html>


More information about the Evolve-testers mailing list