Mercurial > hg-stable
changeset 26154:242853e14804
convert: remove restriction on multiple --rev in hg source
Multiple --rev args on convert is a new feature, and was initially disabled for
all sources. It has since been enabled on git sources, and this patch enables it
on mercurial sources.
author | Durham Goode <durham@fb.com> |
---|---|
date | Thu, 03 Sep 2015 10:29:42 -0700 |
parents | 8aa6fb6de161 |
children | 51a30cae2bff |
files | hgext/convert/hg.py tests/test-convert-hg-startrev.t |
diffstat | 2 files changed, 21 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/convert/hg.py Fri Sep 04 02:51:57 2015 +0800 +++ b/hgext/convert/hg.py Thu Sep 03 10:29:42 2015 -0700 @@ -431,9 +431,6 @@ class mercurial_source(converter_source): def __init__(self, ui, path, revs=None): converter_source.__init__(self, ui, path, revs) - if revs and len(revs) > 1: - raise util.Abort(_("mercurial source does not support specifying " - "multiple revisions")) self.ignoreerrors = ui.configbool('convert', 'hg.ignoreerrors', False) self.ignored = set() self.saverev = ui.configbool('convert', 'hg.saverev', False) @@ -468,7 +465,7 @@ else: self.keep = util.always if revs: - self._heads = [self.repo[revs[0]].node()] + self._heads = [self.repo[r].node() for r in revs] else: self._heads = self.repo.heads() else:
--- a/tests/test-convert-hg-startrev.t Fri Sep 04 02:51:57 2015 +0800 +++ b/tests/test-convert-hg-startrev.t Thu Sep 03 10:29:42 2015 -0700 @@ -201,4 +201,23 @@ | o 0 "0: add a b f" files: a b f - $ cd .. +Convert from specified revs + + $ hg convert --rev 3 --rev 2 source multiplerevs + initializing destination multiplerevs repository + scanning source... + sorting... + converting... + 3 0: add a b f + 2 1: add c, move f to d + 1 2: copy e from a, change b + 0 3: change a + $ glog multiplerevs + o 3 "3: change a" files: a + | + | o 2 "2: copy e from a, change b" files: b e + | | + | o 1 "1: add c, move f to d" files: c d f + |/ + o 0 "0: add a b f" files: a b f +