--- a/hgext/mq.py Thu Jul 27 09:14:53 2006 -0700
+++ b/hgext/mq.py Wed Jul 26 20:11:54 2006 +0200
@@ -442,7 +442,7 @@
r = self.qrepo()
if r: r.add([patch])
if commitfiles:
- self.refresh(repo, short=True)
+ self.refresh(repo, msg=None, short=True)
def strip(self, repo, rev, update=True, backup="all", wlock=None):
def limitheads(chlog, stop):
@@ -739,7 +739,7 @@
qp = self.qparents(repo, top)
commands.dodiff(sys.stdout, self.ui, repo, qp, None, files)
- def refresh(self, repo, short=False):
+ def refresh(self, repo, msg=None, short=False):
if len(self.applied) == 0:
self.ui.write("No patches applied\n")
return
@@ -822,10 +822,14 @@
repo.dirstate.update(c, 'n')
repo.dirstate.forget(forget)
- if not message:
- message = "patch queue: %s\n" % patch
+ if not msg:
+ if not message:
+ message = "patch queue: %s\n" % patch
+ else:
+ message = "\n".join(message)
else:
- message = "\n".join(message)
+ message = msg
+
self.strip(repo, top, update=False, backup='strip', wlock=wlock)
n = repo.commit(filelist, message, changes[1], force=1, wlock=wlock)
self.applied[-1] = revlog.hex(n) + ':' + patch
@@ -1144,14 +1148,16 @@
def new(ui, repo, patch, **opts):
"""create a new patch"""
q = repomap[repo]
- q.new(repo, patch, msg=opts['message'], force=opts['force'])
+ message=commands.logmessage(**opts)
+ q.new(repo, patch, msg=message, force=opts['force'])
q.save_dirty()
return 0
def refresh(ui, repo, **opts):
"""update the current patch"""
q = repomap[repo]
- q.refresh(repo, short=opts['short'])
+ message=commands.logmessage(**opts)
+ q.refresh(repo, msg=message, short=opts['short'])
q.save_dirty()
return 0
@@ -1234,7 +1240,8 @@
def save(ui, repo, **opts):
"""save current queue state"""
q = repomap[repo]
- ret = q.save(repo, msg=opts['message'])
+ message=commands.logmessage(**opts)
+ ret = q.save(repo, msg=message)
if ret:
return ret
q.save_dirty()
@@ -1325,9 +1332,10 @@
'hg qinit [-c]'),
"qnew":
(new,
- [('m', 'message', '', 'commit message'),
+ [('m', 'message', '', _('use <text> as commit message')),
+ ('l', 'logfile', '', _('read the commit message from <file>')),
('f', 'force', None, 'force')],
- 'hg qnew [-m TEXT] [-f] PATCH'),
+ 'hg qnew [-m TEXT] [-l FILE] [-f] PATCH'),
"qnext": (next, [], 'hg qnext'),
"qprev": (prev, [], 'hg qprev'),
"^qpop":
@@ -1346,8 +1354,10 @@
'hg qpush [-f] [-l] [-a] [-m] [-n NAME] [PATCH | INDEX]'),
"^qrefresh":
(refresh,
- [('s', 'short', None, 'short refresh')],
- 'hg qrefresh [-s]'),
+ [('m', 'message', '', _('change commit message with <text>')),
+ ('l', 'logfile', '', _('change commit message with <file> content')),
+ ('s', 'short', None, 'short refresh')],
+ 'hg qrefresh [-m TEXT] [-l FILE] [-s]'),
"qrestore":
(restore,
[('d', 'delete', None, 'delete save entry'),
@@ -1355,12 +1365,13 @@
'hg qrestore [-d] [-u] REV'),
"qsave":
(save,
- [('m', 'message', '', 'commit message'),
+ [('m', 'message', '', _('use <text> as commit message')),
+ ('l', 'logfile', '', _('read the commit message from <file>')),
('c', 'copy', None, 'copy patch directory'),
('n', 'name', '', 'copy directory name'),
('e', 'empty', None, 'clear queue status file'),
('f', 'force', None, 'force copy')],
- 'hg qsave [-m TEXT] [-c] [-n NAME] [-e] [-f]'),
+ 'hg qsave [-m TEXT] [-l FILE] [-c] [-n NAME] [-e] [-f]'),
"qseries":
(series,
[('m', 'missing', None, 'print patches not in series')],