diff mercurial/store.py @ 25091:b5052fc73300

treemanifest: store submanifest revlog per directory With this change, when tree manifests are enabled (in .hg/requires), commits will be written with one manifest revlog per directory. The manifest revlogs are stored in .hg/store/meta/$dir/00manifest.[id]. Flat manifests can still be read and interacted with as usual (they are also read into treemanifest instances). The functionality for writing treemanifest as a flat manifest to disk is still left in the code; tests still pass with '_treeinmem=True' hardcoded. Exchange is not yet implemented.
author Martin von Zweigbergk <martinvonz@google.com>
date Mon, 13 Apr 2015 23:21:02 -0700
parents b7a8e9fa605f
children e93036747902
line wrap: on
line diff
--- a/mercurial/store.py	Fri May 15 10:29:39 2015 -0500
+++ b/mercurial/store.py	Mon Apr 13 23:21:02 2015 -0700
@@ -187,7 +187,7 @@
 
 def _hashencode(path, dotencode):
     digest = _sha(path).hexdigest()
-    le = lowerencode(path[5:]).split('/') # skips prefix 'data/'
+    le = lowerencode(path[5:]).split('/') # skips prefix 'data/' or 'meta/'
     parts = _auxencode(le, dotencode)
     basename = parts[-1]
     _root, ext = os.path.splitext(basename)