Git裸存储库的Linux用户组configuration

我正在使用一个Ubuntu盒托pipe我的裸Git仓库开发人员的工作。

目前,我正在为每个开发人员创build一个用户帐户,因为它可以兼作文件存储和本地testing服务器。

当有人推入裸仓库时,其他开发人员无法处理在对象文件夹中更改的文件。 新文件是由推送者的用户创build的。

我已经把所有的开发人员放在一个开发,但umask不允许组编辑。

我从来没有build立一个Git仓库,所以没有经验的权限工作。 我希望每个开发人员都在testing服务器上拥有自己的用户帐户,而且我希望他们在使用该帐户的服务器上执行操作。 我不介意给他们sudo权利。

为每个开发人员设置umask的前进方向?

虽然“ 如何与一台机器上的多个用户共享一个Git仓库? ”确实解决了您的问题(并且涉及为用户设置umask ),但我更喜欢在git安装中添加像gitolite这样的授权层(请参阅其文档 )。

  • 没有sudo权利给任何人。
  • 所有的git回购操作都是由一个' git '用户完成的。
  • 你可以精确地设置新创build的(和gitolitepipe理的)Git 仓库的umask :“ 在Git / Gitolite中设置umask

build立一个共同的团体,比如gitusers并把所有的开发者join到这个团队中。

 chown -R root:gitusers /path/to/repository.git chmod 2775 /path/to/repository.git 

您可能需要recursion更改权限,例如:

 find /path/to/repository.git -type d -exec chmod 2775 {} \; find /path/to/repository.git -type f -exec chmod 0664 {} \; 

现在,所有的开发人员都应该有权访问存储库。