git:向一些用户分发私人仓库?

时间:2014-05-15 23:02:00

标签: git security

有没有办法让一小群人获得最新代码,无法编写,并且可以访问常用的git功能集,例如查看git log等。

或仅仅向这些用户授予READ权限是否足够?

2 个答案:

答案 0 :(得分:1)

关于GitHub,您可以在“What are the different access permissions?”看到不同的ACL(访问控制级别)

如果您在an organization内注册私人仓库,那么您可以添加读取访问团队的用户:该团队只能克隆/拉取,而不是推。
(他们可以 fork ,但是fork本身就是私有的,因为它是私有仓库的克隆版。)

在GitHub(自托管回购)之外,添加细粒度访问控制级别的常用方法是 gitolite


  

主要是我想通过git push

在生产服务器上部署我的git repo

您可以通过私人仓库执行的操作是注册 webhook ,这将触发JSON payload。您的生产服务器可以监听它,只在GitHub仓库中推送的地方拉(如in this gist)。

答案 1 :(得分:1)

您可能需要查看gitolite。 配置gitolite,他们给你一个名为gitolite-admin的git-repo。

如果您再添加到conf/gitolite.conf

repo project
    RW = you
    R  = friend1 friend2

您可以阅读和书写,而您的朋友只能从回购中阅读。通过ssh公钥验证。

你的朋友可以使用

git clone ssh://git@yourhost.com/project.git