[PATCH 0 of 3] introduce filenamelog repository layout

Adrian Buehlmann adrian at cadifra.com
Mon Jul 21 14:43:56 CDT 2008


A revised version of
http://selenic.com/pipermail/mercurial-devel/2008-July/007155.html

which tries to address the following comments by Matt:

http://selenic.com/pipermail/mercurial-devel/2008-July/007161.html
http://selenic.com/pipermail/mercurial-devel/2008-July/007160.html
http://selenic.com/pipermail/mercurial-devel/2008-July/007167.html

I choose to create a new module 'store.py'. There is now a specific 
store class for each store layout (3 classes), plus an abstract
base class.

In the third patch, I've modified function store.fnlogencode
(the one which does the hash-encoding) to use more levels of directories
if the directory names are short enough, and prefixed the hash string
with the beginning of the basename of the default-encoded input path
(the "filler") to better use the available path space.

See the examples in the change message of patch 3 and the extensive
new doc string of store.fnlogencode (in patch 3 as well).


More information about the Mercurial-devel mailing list