HFS+ is not case sensitive. It took me 6 months to realize this basic fact. It's one of these things you never bother researching when you consider buying a mac. Last week it hit me hard. I spent 30 minutes trying to fix something that should have been fixed in 30 seconds at most.
A colleague had created File.ext on our website hosted on github pages but printed url/file.ext on important documents they were supposed to hand over to someone. Without access to either Internet or a printer, they asked me to fix this. Easy as pie. Except...
Oops. At this point, I lost quite some trying different ideas. I could not believe HFS+ was case insensitive, it never even occurred to me, I thought git was playing a trick on me. I ended up doing the following:
The problem being fixed, I investigated a bit.
I then had to get confirmation on the Internet. Of course, most developers already knew about this. I didn't. And I currently have more than 70 repositories in my dedicated folder ~/repositories. Imagine if one of these had file and File in the same directory when I cloned it.
Here is what I finally did to prevent any future headache.
I then decided on a mounting point for this volume, added an alias to mount it to my rc file, created a symlink ~/repositories -> ~/mountpointrepo, moved my repos to the volume.
Perfect. And the sparse volume will grow without my intervention to fit my ~/repositories content.
JetBrains IDEs started complaining though:
Filesystem Case-Sensitivity Mismatch The project seems to be located on a case-sensitive file system. This does not match the IDE setting (controlled by property "idea.case.sensitive.fs")
Even if their doc on this subject is very, very poor, I found the following solution:
It feels safer now though I cannot really understand why case insensitive file systems still exist in 2016. Probably because people like me buy macs, I know.