Mercurial > hg
changeset 25330:8594d0b3018e stable
histedit: fix keep during --continue
The --keep option was being serialized to the state file, but it wasn't actually
being used when running a histedit --continue. This fixes that.
author | Durham Goode <durham@fb.com> |
---|---|
date | Thu, 28 May 2015 20:30:20 -0700 |
parents | 884ef09cf658 |
children | 7d24a41200d3 b3840fb03dba |
files | hgext/histedit.py tests/test-histedit-arguments.t |
diffstat | 2 files changed, 32 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/histedit.py Wed May 27 14:28:29 2015 -0500 +++ b/hgext/histedit.py Thu May 28 20:30:20 2015 -0700 @@ -741,7 +741,7 @@ replacements = [] - keep = opts.get('keep', False) + state.keep = opts.get('keep', False) # rebuild state if goal == 'continue': @@ -810,7 +810,7 @@ 'exactly one common root')) root = rr[0].node() - revs = between(repo, root, topmost, keep) + revs = between(repo, root, topmost, state.keep) if not revs: raise util.Abort(_('%s is not an ancestor of working directory') % node.short(root)) @@ -834,7 +834,6 @@ state.parentctxnode = parentctxnode state.rules = rules - state.keep = keep state.topmost = topmost state.replacements = replacements @@ -870,7 +869,7 @@ for n in succs[1:]: ui.debug(m % node.short(n)) - if not keep: + if not state.keep: if mapping: movebookmarks(ui, repo, mapping, state.topmost, ntm) # TODO update mq state
--- a/tests/test-histedit-arguments.t Wed May 27 14:28:29 2015 -0500 +++ b/tests/test-histedit-arguments.t Thu May 28 20:30:20 2015 -0700 @@ -295,3 +295,32 @@ # m, mess = edit message without changing commit content # 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + +Test --continue with --keep + + $ hg strip -q -r . --config extensions.strip= + $ hg histedit '.^' -q --keep --commands - << EOF + > edit eb57da33312f 2 three + > pick f3cfcca30c44 4 x + > EOF + Make changes as needed, you may commit or record as needed now. + When you are finished, run hg histedit --continue to resume. + [1] + $ echo edit >> alpha + $ hg histedit -q --continue + $ hg log -G -T '{rev}:{node|short} {desc}' + @ 6:8fda0c726bf2 x + | + o 5:63379946892c three + | + | o 4:f3cfcca30c44 x + | | + | | o 3:2a30f3cfee78 four + | |/ *** + | | five + | o 2:eb57da33312f three + |/ + o 1:579e40513370 two + | + o 0:6058cbb6cfd7 one +