diff -r 71df845d86cf -r 9c1665f36588 mercurial/cmdutil.py --- a/mercurial/cmdutil.py Thu Mar 13 14:34:32 2014 -0500 +++ b/mercurial/cmdutil.py Thu Mar 13 15:00:34 2014 -0500 @@ -1969,7 +1969,11 @@ ph = repo.ui.config('phases', 'new-commit', phases.draft) try: - repo.ui.setconfig('phases', 'new-commit', old.phase()) + if opts.get('secret'): + commitphase = 'secret' + else: + commitphase = old.phase() + repo.ui.setconfig('phases', 'new-commit', commitphase) newid = repo.commitctx(new) finally: repo.ui.setconfig('phases', 'new-commit', ph)