默认git会记录文件的权限信息,如果文件的权限信息被修改,那么git也作为一个差异保存。但是我们有时候是不需要这方面的差异的(例如在Windows下使用Cygwin),这时需要关闭文件权限的检查。
git中可以加入忽略文件权限的配置,具体如下:
$ git config core.filemode false
$ git config --list
还有一个小问题,在设置这个属性之前权限就混乱的话,是无法自动修复的。这时候,如果仅仅是权限混乱的话,直接git reset --hard
恢复吧,git会将项目完全恢复到最近一次提交,包括权限。
如果想针对全局库使用如下命令:
所有git库: git config --global core.fileMode false
当前库: git config core.fileMode false