2013-05-09 20 views
2

我在我的服务器上创建了一个裸存储库。我正在与另一位开发人员合作,并希望共享此回购协议。我已经设置了chgrp -R staff repo.git以及chmod -R 660 repo.git。我已将两个用户帐户添加到员工组。我注意到在推送到repo.git/objects文件夹中的此回购文件后,拥有shawn:shawnshawn:staff的所有权。当我的其他开发人员推进时,他现在正在获得许可被拒绝的错误。如果我运行chgrp这可以解决这个问题,但是,我相信这不是它的工作原理。处理这个场景的正确方法是什么?Git对象权限 - SSH

回答

0

你是如何创建裸露回购的?
正如“Git - Howto setup Shared Repository with SSH access”中所述,您应该在git init --bare中声明“shared=group”。

--shared[=(false|true|umask|group|all|world|everybody|0xxx)] 

指定该Git仓库要在若干用户共享。
这允许属于同一组的用户推入该存储库。
指定时,将设置配置变量“core.sharedRepository”,以便使用请求的权限创建$GIT_DIR下的文件和目录。
未指定时,Git将使用由umas报告的权限。

+0

谢谢,那个链接似乎帮助 – 2013-05-15 03:55:10