--- a/hgext/evolve.py Wed Nov 21 11:37:30 2012 +0100
+++ b/hgext/evolve.py Tue Nov 27 14:28:41 2012 +0100
@@ -1809,7 +1809,8 @@
lockmod.release(lock, wlock)
@command('^fold',
- [('r', 'rev', [], 'revisions to fold'),],
+ [('r', 'rev', [], 'revisions to fold'),
+ ],
# allow to choose the seed ?
_('[-r] revs'))
def fold(ui, repo, *revs, **opts):
@@ -1839,10 +1840,14 @@
try:
allctx = [repo[r] for r in revs]
targetphase = max(c.phase() for c in allctx)
- msg = '\n\n***\n\n'.join(c.description() for c in allctx)
+ msgs = ["HG: This is a fold of %d changesets." % len(allctx)]
+ msgs += ["HG: Commit message of changeset %s.\n\n%s\n" %
+ (c.rev(), c.description()) for c in allctx]
+ commitopts = {'message': "\n".join(msgs)}
+ commitopts['edit'] = True
newid, _ = rewrite(repo, root, allctx, head,
[root.p1().node(), root.p2().node()],
- commitopts={'message': msg})
+ commitopts=commitopts)
phases.retractboundary(repo, targetphase, [newid])
createmarkers(repo, [(ctx, (repo[newid],))
for ctx in allctx])