Case sensitivity in Git

entropid picture entropid · Jan 18, 2012 · Viewed 56.6k times · Source

I've run into a problem with git. Basically I set to false core.ignorecase because I wanted to change the case of the names of some folders (since I'm under OSX with a case-insensitive filesystem, the changes weren't shown otherwise). When I pulled my data, I've noticed that now every renamed folder appears twice on the repository, with both the old and the new name. I don't know what to do to remove the old folders since they don't appear locally (I've try to set core.ignorecase to true again but it isn't helping).

Answer

VonC picture VonC · Jan 18, 2012

May be a workaround similar to this comment in an msysgit issue (for another case-insensitive OS: Windows) could help?

I've encountered this same issue. Refactored a package name in Eclipse and switching to a previous build broke due to the folder name not reverting. I'm using Windows 7, Git 1.7.0.2.msysgit.0

My folder was renamed in Windows to "folder" but was displayed as "Folder" in Git.
I fixed the issue by renaming it to "Folder" in Windows and then running:

git mv "Folder" "Folder2"
git mv "Folder2" "folder"

Note that since git 2.0.1 (June 2014), git mv Folder folder should just work!

See "Git: Changing capitalization of filenames"