Wedged MQ
anatoly techtonik
techtonik at gmail.com
Mon Feb 13 20:47:55 UTC 2012
On Mon, Feb 13, 2012 at 11:32 PM, Matt Mackall <mpm at selenic.com> wrote:
> On Mon, 2012-02-13 at 19:41 +0100, Patrick Mézard wrote:
> > Le 13/02/12 19:24, anatoly techtonik a écrit :
> > > On Mon, Feb 13, 2012 at 5:30 PM, anatoly techtonik <
> techtonik at gmail.com <mailto:techtonik at gmail.com>> wrote:
> > >
> > > I've tried to use MQ to rebase my committed changes on top of
> revisions pulled from upstream by qimporting top commits and pulling, and
> now I can't pop patches from MQ at all:
> > >
> > > $ hg qser -v
> > > 0 A 823.diff
> > > 1 U 824.diff
> > > 2 U 825.diff
> > >
> > > $ hg qpop
> > > abort: popping would remove a revision not managed by this patch
> queue
> > > $ hg qpop -f
> > > abort: popping would remove a revision not managed by this patch
> queue
> > >
> > >
> > > It appeared that pulled commits were built on 823, so it was
> > impossible to remove it without cutting the DAG branch in the middle.
> > Thanks `glog` I was able to find this, but the error message could be
> > more informative.
> >
> > Yes this is clearly a usability bug. One solution is to edit
> > manually .hg/patches/series and .hg/patches/status to reflect the
> > actual queue status.
>
> What does that have to do with the problem?
>
> o-o-o-a-b-c-d
> \
> x
>
> where a,b,c,d are mq patches. Somehow a became public and someone
> committed a non-MQ descendant x that then got pulled in. Now we can't
> pop a without stripping x.
>
> The message could be a lot better, perhaps something like:
>
> "abort: patch 'a' has non-MQ descendant NNNN"
>
"abort: can't remove patch 'a' which became an ancestor for non-MQ
changesets (use qlog to inspect, qfinish to permanently commit it)"
--
anatoly t.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial/attachments/20120213/34043e0e/attachment-0002.html>
More information about the Mercurial
mailing list