Weirdo
Search weird questions

Question

System QuirksAug 24, 2026

On a Mac, why does Git often ignore renaming Readme to README?

GitAPFSmacOS

Details

The filesystem already treats them as one file

Git’s config manual is explicit: core.ignoreCase is an internal variable that turns on workarounds for filesystems that are not case sensitive, and it names APFS, HFS+, FAT, and NTFS. git clone and git init probe the filesystem and set it true when that fits. After that, a working-tree makefile and an index Makefile are treated as the same path. Rename only the case in Finder or with mv, and the filesystem reports the same inode. Git records nothing.2

Use git mv; Finder is not enough

GitHub’s docs tell you to rename from the command line with git mv OLD-FILENAME NEW-FILENAME, which stages the rename. git status should then show renamed: Readme → README. Do not flip core.ignoreCase to false on a Mac just so Git “sees” case: the manual warns that changing the value can produce unexpected behavior. Linux is case-sensitive by default, so the CI breakage is often just a case-only rename that never left your laptop.2

Also Asked As

git rename case Mac · git mv README · core.ignorecase macOS · APFS case insensitive git