Mercurial > hg
comparison mercurial/manifest.py @ 24956:48583a1e44f3
treemanifest: set requires at repo creation time, ignore config after
The very next changeset will start writing one revlog per directory
when tree manifests are enabled. That is backwards incompatible, so it
requires .hg/requires to be updated. Just like with generaldelta, we
want to update .hg/requires only when the repo is created. Updating
..hg/requires is bad for repos on shared disk. Instead, those who do
want to upgrade a repo to using treemanifest (or manifestv2, etc) can
run
hg clone --config experimental.treemanifest repo clone
which will create a new repo with the requirement set. Unlike the case
of e.g. generaldelta, it will not rewrite the changesets, since tree
manifests hash differently.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 05 May 2015 08:40:59 -0700 |
parents | d9832a12a06e |
children | b5052fc73300 |
comparison
equal
deleted
inserted
replaced
24955:1df233bcb7f6 | 24956:48583a1e44f3 |
---|---|
758 usetreemanifest = False | 758 usetreemanifest = False |
759 usemanifestv2 = False | 759 usemanifestv2 = False |
760 opts = getattr(opener, 'options', None) | 760 opts = getattr(opener, 'options', None) |
761 if opts is not None: | 761 if opts is not None: |
762 cachesize = opts.get('manifestcachesize', cachesize) | 762 cachesize = opts.get('manifestcachesize', cachesize) |
763 usetreemanifest = opts.get('usetreemanifest', usetreemanifest) | 763 usetreemanifest = opts.get('treemanifest', usetreemanifest) |
764 usemanifestv2 = opts.get('manifestv2', usemanifestv2) | 764 usemanifestv2 = opts.get('manifestv2', usemanifestv2) |
765 self._mancache = util.lrucachedict(cachesize) | 765 self._mancache = util.lrucachedict(cachesize) |
766 revlog.revlog.__init__(self, opener, "00manifest.i") | 766 revlog.revlog.__init__(self, opener, "00manifest.i") |
767 self._treeinmem = usetreemanifest | 767 self._treeinmem = usetreemanifest |
768 self._treeondisk = usetreemanifest | 768 self._treeondisk = usetreemanifest |