longpath API + hybrid layout for Windows?

Adrian Buehlmann adrian at cadifra.com
Wed Jun 25 19:24:41 CDT 2008


(Peter came up with this on IRC, I think)

What if we do both?

A) use long path file api (more or less my patch)
+
B) new repo path encoding according to parren/mpm (the "hybrid")

A) enables storing long paths /reserved files using the current repo layout
and checking out / renaming reserved files. So, in theory, you just can
do anything by using the old repo layout (if you want).

Implementing A) alone causes problems with explorer and other tools *if* the
paths in the repo are long enough or contain reserved elements.

If this is a problem, then use B) layout to make explorer & Co. happy.

But there is no reason for *not* doing A) or disable it. We can simply always
access the repo and the working copy by using the long path api and thus
get the renaming reserved files on Windows feature as an added bonus.

The new repo format B could be selected with a hgrc/Mercurial.ini option
(default set on Windows for that new hypothetical Mercurial release which
contains A).

Thing is, we don't need an option to disable A).

And if users want, they can choose the current repo layout on Windows.
They just have to live with the explorer problems then. But it's their
decision.


More information about the Mercurial-devel mailing list