• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: How to work on case-sensitive projects?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to work on case-sensitive projects?


  • Subject: Re: How to work on case-sensitive projects?
  • From: Alastair Houghton <email@hidden>
  • Date: Wed, 7 Oct 2009 18:23:28 +0100

On 7 Oct 2009, at 18:09, Allen Curtis wrote:

On 6 Oct 2009, at 20:08, Jamison Hope wrote:

Use a case sensitive file system. Have a disk partition formatted as UFS, or a UFS-formatted disk image and do your svn checkout there. I don't think Disk Utility can create a UFS disk image, but hdiutil can.
http://codesnippets.joyent.com/posts/show/2084

I'd strongly recommend against using UFS, actually. Case-sensitive HFS+ is a much better option.



Well, I am still a little confused about which is case-sensitive vs. case-preserving. In my case, it must be case-sensitive.

Case-sensitive means that FOOBAR.C is a different file from foobar.c and from FooBar.C and so on. Case-sensitive filesystems are generally case-preserving (though there are implementations of FAT that are non- case-preserving but that are nevertheless case-sensitive... yes, this is stupid, before you ask).


Case-preserving means that FOOBAR.C, foobar.c and FooBar.C are all the same file, *but* that you'll always see the filename *as you saved it*... so if you save it as "fOObAR.c", then that's what you'll see in a directory listing, even if you then open it up as "FOOBAR.C" (for instance).

Case-preserving is what FAT32, VFAT, NTFS (except when accessed from the POSIX subsystem, at which point it behaves case-sensitively [yes, really... and yes, that can cause havoc for Windows native software]) and standard HFS+ do. HFS+, however, has an option to be case- sensitive, and you can format such a filesystem with Disk Utility or third-party software such as (shameless plug) iPartition.

There are systems that are neither case-sensitive nor case-preserving (various implementations of FAT are like this, for example), so when you save "FOOBAR.C", "foobar.c", "FooBar.C" or whatever, you'll get either "FOOBAR.C" or "foobar.c" depending on the preference of the filesystem's developer.

BTW: This will be a problem for any Linux kernel developer wishing to use their Mac for development.

The problem is the stupid decision on the part of the Linux kernel people to have filenames that differ only by case in their source tree.


In the meantime, you can create a case-sensitive HFS+ filesystem somewhere (e.g. in a disk image, in another partition, on an external disk, or mounted over the network) where you'll get the behaviour you want.

Kind regards,

Alastair.

--
http://alastairs-place.net



_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: How to work on case-sensitive projects?
      • From: Kevin Van Vechten <email@hidden>
References: 
 >How to work on case-sensitive projects? (From: Allen Curtis <email@hidden>)
 >Re: How to work on case-sensitive projects? (From: Jamison Hope <email@hidden>)
 >Re: How to work on case-sensitive projects? (From: Alastair Houghton <email@hidden>)
 >Re: How to work on case-sensitive projects? (From: Allen Curtis <email@hidden>)

  • Prev by Date: Re: How to work on case-sensitive projects?
  • Next by Date: Re: How to work on case-sensitive projects?
  • Previous by thread: Re: How to work on case-sensitive projects?
  • Next by thread: Re: How to work on case-sensitive projects?
  • Index(es):
    • Date
    • Thread