[issue3238] phases go out of sync when mixing <2.1 and 2.1 with mq

Idan Kamara bugs at mercurial.selenic.com
Thu Feb 2 07:02:49 CST 2012


New submission from Idan Kamara <idankk86 at gmail.com>:

phaseroots contains an invalid node that the old hg rewrote in qrefresh. 
Then the new hg thinks the current parent is immutable.

Test case below (change path to pre 2.1 hg):

Start with 2.1:

  $ echo '[extensions]' >> $HGRCPATH
  $ echo 'mq=' >> $HGRCPATH
  $ hg init
  $ echo a > a
  $ hg ci -Am.
  adding a

Explicitly set the parent changeset to public:

  $ hg phase -r . -p
  $ echo a >> a
  $ hg qnew bar

qrefresh with < 2.1:

  $ echo a >> a
  $ /home/idan/dev/hg/hg2.0/hg qrefresh

Go back to 2.1:

  $ echo a >> a
  $ hg qrefresh
  abort: cannot refresh immutable revision
  (see "hg help phases" for details)
  [255]

----------
messages: 18914
nosy: idank
priority: bug
status: unread
title: phases go out of sync when mixing <2.1 and 2.1 with mq

____________________________________________________
Mercurial issue tracker <bugs at mercurial.selenic.com>
<http://mercurial.selenic.com/bts/issue3238>
____________________________________________________


More information about the Mercurial-devel mailing list