evolve: improve graft handling of -O we now resolve changeset reference before graft
diff --git a/hgext/evolve.py b/hgext/evolve.py
--- a/hgext/evolve.py
+++ b/hgext/evolve.py
@@ -316,7 +316,7 @@ def kill(ui, repo, *revs, **opts):
finally:
wlock.release()
-@command('^amend',
+@command('^amend|refresh',
[('A', 'addremove', None,
_('mark new/missing files as added/removed before committing')),
('n', 'note', '',
@@ -445,6 +445,14 @@ def graftwrapper(orig, ui, repo, *revs,
obsoleted.extend(repo.opener.read('graftstate').splitlines())
else:
obsoleted.extend(revs)
+ # convert obsolete target into revs to avoid alias joke
+ obsoleted = kwargs.setdefault('obsolete', [])
+ obsoleted[:] = [str(i) for i in repo.revs('%lr', obsoleted)]
+ if obsoleted and len(revs) > 1:
+
+ raise error.Abort(_('Can not graft multiple revision while '
+ 'obsoleting (for now).'))
+
return commitwrapper(orig, ui, repo,*revs, **kwargs)
finally:
lock.release()