2012-07-20 48 views
0

我有一个项目,我们的研究实验室正在工作,但只有少数成员可以访问代码。我们使用的是Git和BitBucket,但我们希望使用服务器实验室作为我们的主要存储库。我有以下约束:没有管理员权限的服务器中的组的Git存储库

  • 我们没有管理员权限;
  • 只有少数成员可以访问这些文件;
  • 每个实验室成员都已在服务器中拥有自己的登录名。

我该如何做这项工作?

我在想让管理员在服务器中添加一个组,这个组对我们的Git仓库文件夹有读/写权限。它工作吗?有没有更好的方法来管理这些Git存储库?

回答

2

除了Borealid在他的回答中写道的内容,您还可以使用gitolite。它允许您拥有更加细致的访问控制(例如,您可以防止用户删除您的存储库或阻止(部分)用户推送到某些分支)。它不需要root访问权限。

+0

因此,我可以在登录时使用gitolite,管理服务器中的哪些用户可以访问这些文件?但是,如果存储库位于我的主文件夹内,他们可以访问存储库而无需访问我的主文件夹? – Yamaneko 2012-07-20 18:40:45

+2

@VictorHugo:您可以删除组/世界读取或执行存储库文件夹的权限。 Gitolite在你的uid下运行,所以它仍然可以写入它们。 – 2012-07-20 18:42:38

+0

当然!你是对的,谢谢! – Yamaneko 2012-07-20 18:47:33

2

拥有一个被授予访问存储库目录的POSIX组是一种很好的做事方式。

请注意,您必须信任其他组成员 - 他们可以完全删除该目录,而无需使用git客户端。

+0

这是我关心的事情之一。我是Git的新手,最近失去了一些代码。幸运的是,我有一个备份。所以,我在想的是使用POSIX组,并在云中进行备份,例如BitBucket。 – Yamaneko 2012-07-20 18:33:00

相关问题