Case-insensitivity with OS X using git

Today, I got bitten by OS X being case-insensitive while using git. I had a directory models with JavaScript files in it named account.js, project.js, and event.js. I decided that the models should be capitalized. Sure, no problem using trusty mv.

When I looked in git though, no changed files. WTF? I even tried changing another file and committing. Looking in the web GitHub file browser, the files were still all lowercase.


Turns out the solution is to use git mv -f.

➜  models git:(master) git mv -f account.js Account.js
➜  models git:(master) ✗ git mv -f project.js Project.js
➜  models git:(master) ✗ git mv -f event.js Event.js
➜  models git:(master) ✗ git status
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)

          renamed:    account.js -> Account.js
          renamed:    project.js -> Project.js              
          renamed:    event.js -> Event.js



Now read this

China… We need to talk.

As of late, all we seem to hear about is China hacking. Forbes. Anthem Healthcare. Microsoft. Why is it that the citizens of China are so naughty and malicious on the internet? As the founder of a US based startup, I just... Continue →