Mercurial > hgsubversion
diff hgsubversion/wrappers.py @ 1092:cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
This adds a config-driven custom layout, targeted at the case where
you need to fetch a small subset of a large number of subversion
branches, or where your subversion layout doesn't match the standard
trunk/branches/tags layout very well.
author | David Schleimer <dschleimer@fb.com> |
---|---|
date | Mon, 26 Aug 2013 16:40:31 -0700 |
parents | 2d7398fffd0d |
children | 791382a21cc4 |
line wrap: on
line diff
--- a/hgsubversion/wrappers.py +++ b/hgsubversion/wrappers.py @@ -544,7 +544,13 @@ optionmap = { 'startrev': ('hgsubversion', 'startrev'), } -dontretain = { 'hgsubversion': set(['authormap', 'filemap', 'layout', ]) } +extrasections = set(['hgsubversionbranch']) + + +dontretain = { + 'hgsubversion': set(['authormap', 'filemap', 'layout', ]), + 'hgsubversionbranch': set(), + } def clone(orig, ui, source, dest=None, **opts): """ @@ -602,7 +608,9 @@ def clone(orig, ui, source, dest=None, * fd = dstrepo.opener("hgrc", "a", text=True) else: fd = dst.opener("hgrc", "a", text=True) - for section in set(s for s, v in optionmap.itervalues()): + preservesections = set(s for s, v in optionmap.itervalues()) + preservesections |= extrasections + for section in preservesections: config = dict(ui.configitems(section)) for name in dontretain[section]: config.pop(name, None)