我想克隆一个 git 项目(比如来自 github),并让顶级目录可以按组写入。
我尝试了几件不同的事情。首先,只需在克隆前设置 umask。
$ umask
0002
然后我创建的文件可以按组写入
$ touch test
$ ls -l test
-rw-rw-r-- 1 user group 0 2012-05-17 09:32 test
现在我尝试git clone
$ git clone git@github.com:user/repo.git
Cloning into repo... [succeeds]
但克隆目录不可按组写入。
$ ls -ld repo
drwxr-xr-x 11 user group 4096 2012-05-17 09:32 repo
git init --shared=umask
我在具有 775 权限的目录中使用(应该已经是默认值)创建的 repo 尝试了同样的事情。推送到 github 后git clone
得到相同的结果。
这没什么大不了的,我可以在我的结帐脚本中 chmod。但是,如果有正确/内置的方法可以做到这一点,那就更好了。Git 是 Ubuntu 11.04 上的 1.7.4.1 版本。
任何想法或链接表示赞赏。我看到了这篇文章,但它使用 chmod,我在这方面找不到太多其他内容。谢谢!