# HG changeset patch # User Dirkjan Ochtman # Date 1261570356 -3600 # Node ID c23626384b7e850eabd537d1d5f5aadd3a216d43 # Parent f76984a27b3dfdfda17ef93683a3cb9a04e2dc43# Parent 3e7663b2f3fcd4cc7a2246c644a1eb5adcfb3b4e merge with default diff -r f76984a27b3d -r c23626384b7e hgext/mq.py --- a/hgext/mq.py Tue Dec 22 00:50:15 2009 +0100 +++ b/hgext/mq.py Wed Dec 23 13:12:36 2009 +0100 @@ -770,6 +770,10 @@ else: m, a, r, d = self.check_localchanges(repo, force) match = cmdutil.matchfiles(repo, m + a + r) + if force: + p = repo[None].parents() + if len(p) > 1: + raise util.Abort(_('cannot manage merge changesets')) commitfiles = m + a + r self.check_toppatch(repo) insert = self.full_series_end() diff -r f76984a27b3d -r c23626384b7e tests/test-mq-qnew --- a/tests/test-mq-qnew Tue Dec 22 00:50:15 2009 +0100 +++ b/tests/test-mq-qnew Wed Dec 23 13:12:36 2009 +0100 @@ -58,3 +58,19 @@ echo '% qnew -u with no username configured' HGUSER= hg qnew -u blue red cat ../.hg/patches/red + +echo '% fail when trying to import a merge' +hg init merge +cd merge +touch a +hg ci -Am null +echo a >> a +hg ci -m a +hg up -r 0 +echo b >> a +hg ci -m b +hg merge -f 1 +hg resolve --mark a +hg qnew -f merge + +exit 0 diff -r f76984a27b3d -r c23626384b7e tests/test-mq-qnew.out --- a/tests/test-mq-qnew.out Tue Dec 22 00:50:15 2009 +0100 +++ b/tests/test-mq-qnew.out Wed Dec 23 13:12:36 2009 +0100 @@ -35,3 +35,13 @@ % qnew -u with no username configured From: blue +% fail when trying to import a merge +adding a +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +created new head +merging a +warning: conflicts during merge. +merging a failed! +0 files updated, 0 files merged, 0 files removed, 1 files unresolved +use 'hg resolve' to retry unresolved file merges or 'hg update -C' to abandon +abort: cannot manage merge changesets