linux – ‘git clone’尊重umask,顶级项目目录除外

我想克隆一个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 [email protected]: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版本.

任何想法或链接都表示赞赏.我看到this post,but it uses chmod,我还没有找到其他的东西.谢谢!

解决方法

尝试仅为clone命令设置全局“core.sharedRepository = group”:
git -c "core.sharedRepository=group" clone [email protected]:user/repo.git
ls -ld repo/.git
drwxrwsr-x 8 user user 4096 Jul  4 22:16 repo/.git/

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...