monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] Case on Mac OS X


From: Stephen Leake
Subject: Re: [Monotone-devel] Case on Mac OS X
Date: Thu, 20 Jan 2011 23:50:37 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (windows-nt)

Thomas Keller <address@hidden> writes:

> Am 20.01.11 20:58, schrieb Mando Rodriguez:
>> Hi All,
>> 
>> Recently upgraded to monotone 0.99.1 (base revision:
>> 8973482283db7c36780dce2b54721ccc0f5b7388) on Mac OS X (Snow Leopard). I
>> attempted to update a workspace from a new sync that contained the
>> renaming of a directory  from:
>> 
>> glue/swig/python_old/heccer
>> 
>> to
>> 
>> glue/swig/python_old/Heccer
>> 
>> With only the case of the first letter of the directory 'heccer'
>> changing from lowercase to uppercase. Monotone bails out claiming that
>> the directory already exists.
>> 
>> mtn: updating along branch '0'
>> mtn: selected update target 2898afd0a666f80d05f479d2f9d9d65d50e7c326
>> mtn: [left]  1f09160cf4ba710e1afbc64b56d8cd2702dc6bc3
>> mtn: [right] 2898afd0a666f80d05f479d2f9d9d65d50e7c326
>> mtn: adding glue/swig/python_old/Heccer
>> mtn: misuse: rename target 'glue/swig/python_old/Heccer' already exists
>> 
>> Is there an option I need to switch on to have it handle this? Or is
>> this a bug in Mac OS X?
>
> Apple's default file system, HFS+, is case insensitive and monotone is
> currently bad at handling case (in)sensitiveness, on Mac as well on
> Windows. The reason is simply that the file system reports for both
> paths, the old and the new, that the file exists and we cannot do much
> about that.

The only global solution is a project file naming policy that takes into
account all of the target systems the project will use. That usually
means "all file names are all lowercase".

Another choice would be "all filesystems must be case sensitive". But
that's a lot harder to enforce.

So the best fix for your case might be to rename "Heccer" back to
"heccer" on the case-sensitive system, and tell everyone about the
naming policy.

monotone could do better in resolving the conflict. This is a workspace
conflict, which is not supported by the current 'mtn conflict' commands.
One of these days I'll work on it.

-- 
-- Stephe



reply via email to

[Prev in Thread] Current Thread [Next in Thread]