Your solution is not bad, but there is another possibility: git config core.filemode false :
http://git-scm.com/docs/git-config
core.fileMode
If false, differences in the executable bit between the index and the working copy are ignored; useful for broken file systems such as FAT. See git -update-index (1).
The default value is true, with the exception of git -clone (1) or git -init (1) will check and set core.fileMode false if necessary when the repository is created.
This may create more work for anyone who should clone the repo in the future (or it may not be so, I'm not sure), so your solution is probably better, but I thought I would throw it there as it might be more suitable for someone else use the case ...
source share