[PATCH 2 of 2 phases] phases: prevent mq to qimport immutable change
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Tue Dec 20 01:17:18 UTC 2011
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at ens-lyon.org>
# Date 1324343265 -3600
# Node ID 31674e40681d981489bb089c46d01eb0668b224b
# Parent 53c82dfce4718c3441f249ca96985ba0ac962faf
phases: prevent mq to qimport immutable change.
diff --git a/hgext/mq.py b/hgext/mq.py
--- a/hgext/mq.py
+++ b/hgext/mq.py
@@ -1765,6 +1765,9 @@
diffopts = self.diffopts({'git': git})
for r in rev:
+ if not repo[r].mutable():
+ raise util.Abort(_('revision %d is not mutable') % r,
+ hint=_('See hg help phases for details'))
p1, p2 = repo.changelog.parentrevs(r)
n = repo.changelog.node(r)
if p2 != nullrev:
diff --git a/tests/test-mq-qimport-fail-cleanup.t b/tests/test-mq-qimport-fail-cleanup.t
--- a/tests/test-mq-qimport-fail-cleanup.t
+++ b/tests/test-mq-qimport-fail-cleanup.t
@@ -32,3 +32,9 @@
$ hg qseries
b.patch
+
+ $ hg pull -q -r 0 . # update phase
+ $ hg qimport -r 0
+ abort: revision 0 is not mutable
+ (See hg help phases for details)
+ [255]
More information about the Mercurial-devel
mailing list