$ GIT_DIR的内容应该具有哪些文件权限?

Ale*_*eek 9 git

我已从备份恢复了git repo,但它没有正确的文件权限.是否足以在.git中的所有文件和目录上设置所有者+ rw,还是更微妙?

是否有实用程序来检查或重置.git文件权限?

Jon*_*ler 22

目录应有755个权限; 文件应具有644权限.

除非您希望您的组成员对您的存储库进行更改,否则这是一个非常好的经验法则.

话虽如此,在我的一个存储库中,所有文件.git/objects/*都有444(只读)许可.其他文件是建议的644.

此脚本在.git存储库正上方的顶级目录中运行将修复权限:

 find .git -type d | xargs chmod 755
 find .git/objects -type f | xargs chmod 444
 find .git -type f | grep -v /objects/ | xargs chmod 644
Run Code Online (Sandbox Code Playgroud)

我开始使用-print0前两个find命令,并xargs -0允许远程文件名中的空格.但是grep -v在第三个命令中很难用-print0格式来管理- 所以我省略了所有命令的空间安全符号,知道git不会在.git目录下创建名称间隔的文件.