我在网络驱动器上使用msysgit(v1.7.7)从Windows克隆了一个Git存储库。 某些文件在存储库中标记为具有模式100755。
使用Windows中的git bash工具,ls -l
命令有效地显示了这些文件的良好权限。
现在,当我从Linux访问存储库目录时,这些文件具有644权限而不是755。
如果我在Linux端将它们chmod到755并返回到Windows上的git bash工具:
ls -l
命令仍然显示具有755权限的文件git diff
命令告诉文件更改模式从100755到100644 知道如何在Windows上使用msysgit正确处理文件模式吗?
我在msysgit上发现了这个与我的问题http://code.google.com/p/msysgit/issues/detail?id=164相对应的问题
我在我的文件上尝试了提议的git update-index --chmod=+x
,但它没有改变任何内容。
答案 0 :(得分:12)
mingw不像linux那样支持文件模式。据我所知,它遵循Windows扩展支持,即.exe
将具有+ x位。但是chmod没有做任何事情。
因此,对于git,您应指定git config core.filemode false
以禁用mingw中的文件模式支持。如果你需要改变它,你应该在Linux下进行。
然而,也许我错了,但是afg cygwin确实支持文件模式。你可以尝试而不是mingw。