diff --git a/hgext/mq.py b/hgext/mq.py --- a/hgext/mq.py +++ b/hgext/mq.py @@ -3159,8 +3159,12 @@ def qqueue(ui, repo, name=None, **opts): def mqphasedefaults(repo, roots): """callback used to set mq changeset as secret when no phase data exists""" if repo.mq.applied: + if repo.ui.configbool('mq', 'secret', False): + mqphase = phases.secret + else: + mqphase = phases.draft qbase = repo[repo.mq.applied[0].node] - roots[phases.secret].add(qbase.node()) + roots[mqphase].add(qbase.node()) return roots def reposetup(ui, repo): diff --git a/tests/test-mq.t b/tests/test-mq.t --- a/tests/test-mq.t +++ b/tests/test-mq.t @@ -1448,4 +1448,19 @@ insensitive filesystem is not enough: applying modify-file now at: modify-file - $ cd .. +Proper phase default with mq: + +1. mq.secret=false + + $ rm .hg/store/phaseroots + $ hg phase 'qparent::' + 0: draft + 1: draft + 2: draft + $ echo '[mq]' >> $HGRCPATH + $ echo 'secret=true' >> $HGRCPATH + $ rm -f .hg/store/phaseroots + $ hg phase 'qparent::' + 0: secret + 1: secret + 2: secret