[PATCH v2] shelve: add a shelve extension to save/restore working changes

Pierre-Yves David pierre-yves.david at logilab.fr
Thu Jun 13 08:06:26 CDT 2013


On Wed, Jun 12, 2013 at 04:31:27PM -0700, Bryan O'Sullivan wrote:
> On Tue, Jun 11, 2013 at 4:41 PM, Matt Mackall <mpm at selenic.com> wrote:
> 
> >
> > a) needs to work with mq patches applied
> >
> 
> I've tried to address that today, but it's heavy going.
> 
> The obvious thing to do is temporarily save repo.mq.applied, empty it
> before committing (to defeat mq's commit-on-patches check), then restore
> it. But this doesn't work, for mysterious reasons.

Why don't you just bypass the MQ commit-on-patches check when commiting a shelve ?


> Here's what I think I see so far: Pierre-Yves's repoview code seems to be
> implicated in making the mqrepo's mq object get deleted and recreated on
> every access, so setting repo.mq.applied works and then the repo.mq object
> is deleted and recreated immediately. There's enough magic in the call
> stack that I really haven't figured out what is going on yet, though, so
> please don't take this as anything more than me scratching my head out loud.

This is not supposed to happen. The repoview object should just proxy
everything to the original localrepo object.

I'm not saying that repoview can't be bugged. But it should not prevent you
from doing what you are trying to.



-- 
Pierre-Yves David

http://www.logilab.fr/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20130613/73cdb5f9/attachment.pgp>


More information about the Mercurial-devel mailing list