在我的本地存储库中,我有一个文件模式为550的文件。在.git / config中,filemode = true在我的本地存储库和服务器的存储库上设置。但是当我从github拉出来时,文件总是以775的形式出现!
我对此非常困惑。有没有办法告诉git如何为文件做烫发?所以它不会像这样改变它们吗?我也很好奇,为什么git这样设计,不尊重文件烫发?我意识到我可以制作一个shell脚本来修复它,等等,但我只是很好奇。
很抱歉,如果这是重复的,我无法找到任何可以解决此问题的内容。
答案 0 :(得分:3)
Git只为文件权限存储一个位:执行或不执行。
其余位根据您的umask设置(至少在Unix / Linux系统上)。如果您需要640或750设置,请将您的umask设置为027
而不是022
。 (所有shell都有umask
作为内置命令,原因与所有shell都有chdir
作为内置命令相同。)请记住,umask设置是“要带走的位”,所以027
表示“带走组写;带走其他读+写+执行”。
(umask是大多数程序应该主要使用模式0666
或0777
创建大多数文件的原因。)