Windows people: please help check idea for a new Mercurial repository layout

Adrian Buehlmann adrian at cadifra.com
Sat Jun 14 11:04:24 CDT 2008


On 14.06.2008 17:43, Adrian Buehlmann wrote:
> On 14.06.2008 17:05, Matt Mackall wrote:
>> On Sat, 2008-06-14 at 12:22 +0100, Paul Moore wrote:
>>> 2008/6/14 Adrian Buehlmann <adrian at cadifra.com>:
>>>> So, a simple file/directory encoding strategy (for a new Mercurial repo
>>>> layout) would be to prepend a period to every directory- and filename
>>>> inside the .hg dir.
>>>>
>>>> If anyone knows this encoding doesn't work, please tell me!
>>> I see no reason why this would not work. However, it may be a bit more
>>> wide-ranging than is needed.
>> Actually, it's not wide-ranging enough - it doesn't solve the long
>> filename problem and we're not going to switch layouts unless we solve
>> both.
> 
> Ok. Good to know what the requirements are. So I can drop that track now.
> 
>> As I've mentioned before, it *is* possible to create both very long path
>> names *and* files with reserved filenames on Windows by using the
>> Unicode APIs. And that doesn't even require a layout change.
> 
> Sorry, I must have missed that one of your statements then.
> 
> Per my understanding, explorer.exe and other equally important programs can't
> handle such \\?\ paths (for example winzip and potentially other archivers).
> 
> How do we copy or backup such new \\?\ repositories?
> 
> I can't even copy a directory containing a file aux.i created with that
> \\?\ syntax by using explorer on Windows XP SP3 (an error box pops up with
> the text: "Cannot copy aux: The parameter is incorrect").
> 
> And can such \\?\ repos be copied to non-NFTS volumes (for backup)? For example
> to a network share on a Samba server?
> 
> These are important use cases of repositories to consider as well.

TortoiseHG will probably be affected too by the \\?\.. paths switch.
Might be difficult to convert that code base.


More information about the Mercurial mailing list