Linux

Adrian Buehlmann adrian at cadifra.com
Wed Oct 1 13:06:25 CDT 2008


On 01.10.2008 17:38, Bill Barry wrote:
> I have found it easier to have the central repo be linux because the 
> windows filesystem is case insensitive and every once in a while 
> somebody commits a file which is in a different case than a file another 
> person also commits (it has happened to me 4 times in the past 1500 
> revisions, but we are heavily using branches). When this happens the 
> easiest thing to do is to go on a case sensitive filesystem and manually 
> merge the two files. So long as you have one machine running linux, this 
> is an easy thing to do.
> 
> I plan on trying out ext3 as a filesystem on windows in order to make 
> this issue not such a problem.

The files inside the .hg dir are all lowercase, as Mercurial encodes
filename "X" as "_x" in the store.

So, Mercurial's store *is* case insensitive (provided you use the
default repository format, that is, [format] usestore = True in hgrc).

That's why you can move the .hg dir between Windows and unix/Linux.

Disclaimer:
http://www.selenic.com/mercurial/bts/issue839
http://www.selenic.com/mercurial/bts/issue793

> Disclaimer: I haven't bothered trying to find other solutions to this 
> because the one I have works. I am pretty sure there are others.

There is no need to have linux/unix for the *central* repo server in order
to fix case collisions.

You can do these fixes on any system that provides a case-sensitive
working directory.

I use FreeBSD for our server (Windows XP clients here), mostly because
it's easier to setup things like ssh and Apache (compared to on windows).
But your mileage may vary...




More information about the Mercurial mailing list