使用gitolite限制git repo中的读访问权限

时间:2016-11-18 05:15:55

标签: git access gitolite

我正在使用gitolite for git repository限制访问。

任何人都可以告诉如何配置限制分支以及如何限制特定目录/文件的读取权限?

1 个答案:

答案 0 :(得分:2)

正如Gitolite overview

中所述
  

在回购级别控制的读访问权,

您可以访问(克隆)完整回购,或者根本不知道。

敏感文件通常在回购中(或在私人仓库中),并通过smudge filter content driver生成。那个' smudge'脚本可以(在git checkout上)检查您是否是授权用户,如果是,则获取文件(来自可信私有源,而不是来自git repo)并在结帐时生成您的受限文件。

另一方面,

写入访问限制始终是可能的,as I mentioned 6 years ago
使用 VREFS ,您可以实施各种政策(例如git commit messagesbased on roles

是的,你可以restrict pushes based on file/DIR

您甚至可以使用LDAP groups to restrict gitolite access

用于限制基于目录/文件或分支/标签的读访问权限,但gitolite ...

除外
  • 首先,即使是gitolite也不这样做
  • 这不是Git repo的工作方式:您必须对侦听器(https或ssh)级别施加限制,即git upload-pack级别(在客户端{{}}期间在服务器端完成{{ 1}})正在请求包:它由ssh或https smart protocol调用 这将涉及包检查(使用git verify-pack),这将减慢相当大的克隆/获取操作,并且据我所知还没有完成。

因此,我原来建议将任何限制/敏感文件放入git repo。