Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

howto migrate to case sensitive file system?

Exchanging source files and documentation with others via git I cannot risk loosing or corrupting information due to case "preserving" (i.e. internally ignoring) file systems. Using MacOS I don't want to be the one to blame, if there is a case conflict in the names of the shared files that doesn't come up on other systems using case sensitive file systems. So I wonder how I can migrate my APFS partition to a case sensitive file system without reformatting? Is there a migration assistant I was too blind to see?


Every insightful comment is highly appreciated

Harri


MacBook

Posted on Oct 14, 2020 6:19 AM

Reply
Question marked as Best reply

Posted on Oct 14, 2020 7:31 PM

I'm so glad you are thinking about people using other file systems! I wish more developers would plan ahead even if they don't currently plan to support multiple systems at first. It is so much easier for a developer to plan for deploying to multiple operating systems at the beginning than it is to transition later on in the project. Yes it is more work up front, but it is well worth it later.


Your best option may be to use an external drive with a case-sensitive file system. Like @Kurt Lang mentions it is not a good idea to change the default for the boot drive since Apple and Apple third party developers are not testing their apps with a case-sensitive file system in mind. I recommend using MacOS Extended (Journaled) case-sensitive on the external drive since APFS is a new file system with lots of growing pains that usually require erasing the drive to recreate a fresh file system since Disk Utility cannot repair AFPS very well.


Make sure to have a good backup of your external drive(s) if they contain any important and unique data in addition to backing up your main drive.

12 replies
Question marked as Best reply

Oct 14, 2020 7:31 PM in response to Harridu

I'm so glad you are thinking about people using other file systems! I wish more developers would plan ahead even if they don't currently plan to support multiple systems at first. It is so much easier for a developer to plan for deploying to multiple operating systems at the beginning than it is to transition later on in the project. Yes it is more work up front, but it is well worth it later.


Your best option may be to use an external drive with a case-sensitive file system. Like @Kurt Lang mentions it is not a good idea to change the default for the boot drive since Apple and Apple third party developers are not testing their apps with a case-sensitive file system in mind. I recommend using MacOS Extended (Journaled) case-sensitive on the external drive since APFS is a new file system with lots of growing pains that usually require erasing the drive to recreate a fresh file system since Disk Utility cannot repair AFPS very well.


Make sure to have a good backup of your external drive(s) if they contain any important and unique data in addition to backing up your main drive.

Oct 15, 2020 3:05 AM in response to Kurt Lang

Sorry for asking, but who says that? Next to some adobe software that I don't use, which apps would be affected? Wouldn't you agree that this software has be considered as buggy?


The problem is that on cooperation with others (and their case sensitive file systems) there is a risk of losing information, as soon as MacOS case preserving file system is involved.

Oct 15, 2020 7:10 AM in response to Harridu

Who? You mean like Adobe? That's been true since, um, forever. Who are the "others". I can't tell you off the top of my head. I can only somewhat repeat an article from years ago where the author was saying not to use case sensitive systems, and only vaguely mentioned "many" apps don't like them. And many is a very vague amount. Out of hundreds of thousands of Mac apps you could acquire and run, many may be 100. Who knows the real count or percentage? I don't.


The following is one person's opinion I found (language cleaned up a bit), but I agree since I have often thought the same thing:


Case-sensitive filesystems are stupid.


I’m sorry. It’s true.


Case-sensitive filesystems are a major user interface fail. They’re actively user-hostile. They force humans to conform to the machine’s way of doing things rather than the other way around. They’re idiotic.


Why would any reasonable person assume that…


Letter to Mother.doc

Letter to mother.doc

and

Letter to Mother.Doc


…should be entirely different files with entirely different contents? Are you kidding me? This is ridiculous.


Plus, if you try to use your Mac this way, then every single device you write data to also must be case sensitive. Such as, you want to write two identically named files (other than case) to a USB drive. You'll only be able to copy one of them to the drive unless you also format that as case sensitive. Then the person you give the USB drive to also must have a case sensitive system to copy them as is. It's either that or they need to copy one, rename the first file, then copy the other.


One person's opinion I found actually said DOS was case sensitive and why can't the Mac do that? I have to assume this person never used an MS-DOS computer. It was never case sensitive. Ever. You could type lower case, or a combination of upper/lower case on the command line, but everything to the OS was upper case. The Joliet system of Windows 95 allowed you to save what looked like case sensitive names (just like the Mac), but they weren't. A file named Marketing Report April 2.doc was actually saved as MARKET~1.DOC, with the long name being an attribute you saw on the desktop.

Oct 15, 2020 7:30 AM in response to Harridu

Harridu wrote:

I understand that apple doesn't provide a tool to support the migration, but the conversion from case preserving to case sensitive file system would be possible. There is no additional risk for loosing information.


Case in point. You meant to write "losing" information.


"Loosing" is an accurate if somewhat antiquated word. If one were to interpret what you wrote literally, "loosing" changes your statement completely.


Of course I understood what you meant but software is not nearly as fault-tolerant. A mistyped variable might not compile, it might cause an exception, it might simply crash, or it might totally alter a function causing software to behave in an unintended manner.


Those are just consequences of a single misspelling. Imagine the unmitigated disaster that would ensure if thousands of third party software developers were expected to comply with case sensitivity requirements.

Oct 19, 2020 8:47 AM in response to Harridu

Harridu wrote:

I understand your concerns and recommendations wrt upper and lower case letters in the file names. Anyway, in my case it turns out that using a case preserving file system was a bad choice. I would like to migrate to case sensitive without too much hassle. AFAICS case sensitive APFS is not forbidden to be used.

The problem is macOS developers may only be testing their software with a Case-Insensitive file system. If you make your boot volume case-insensitive you don't know what might break. This may even include Apple OS developers creating macOS. From my own personal experience Apple doesn't expect people to deviate from the Apple defaults as I've seen so much in macOS break when people deviate from Apple's expectations. Just because it works today without problems, it does not mean tomorrow's update won't break it. Of course you are free to try it and see what happens.


Here is one person's way to possibly work around the issue by pulling the git repository into a case-sensitive disk image file, but it seems like he later went to an external drive for git projects:

https://coderwall.com/p/mgi8ja/case-sensitive-git-in-mac-os-x-like-a-pro


I found an even nicer solution for users with the APFS file system. Create another volume that is case-sensitive while leaving the macOS portion as case-insensitive as described in this post:

https://stackoverflow.com/a/49133889


As for the proper way to handle a cross-platform git repository on macOS you may have better luck asking your question in the Developers forum or perhaps a site like Stack Overflow or Apple Stack Exchange.

howto migrate to case sensitive file system?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.