为什么需要Gitosis或Gitolite?

4

非常抱歉我的无知 - 但是拥有Gitosis或Gitolite的好处是什么?

我有一个运行中的Synology NAS服务器,但是我不能在NAS上的任何文件夹中创建“裸”的存储库吗?

问候

2个回答

8
主要原因是访问控制。Git除了存储库级别的访问控制功能外,不支持任何其他访问控制功能,而且通常需要更细粒度的访问控制,例如访问组、文件夹/文件/分支/标签级别的控制等。
对于很多项目来说,这并不是必需的。然而,对于某些项目来说,这是绝对必需的。

2

关于 "认证和授权" 的问题,请参见我的答案:DVCS(分布式版本控制系统)没有这些功能。

您需要将授权机制与 ssh 或 httpd 进行身份验证机制的耦合。

然而,必须使用某种形式与 sshd 或 httpd 兼容的身份验证系统。
为什么?因为访问服务器的 git 客户端只知道这两个协议来“说话”(好吧,git:// 协议是未经身份验证的,file:// 不适用于此讨论,所以我们忽略了这些)。

例如,假设您有一个基于 LDAP 的身份验证系统。
可以使 apache 使用该系统对用户进行身份验证,因此当用户使用 http://sitaram:password@git.example.com/repo 访问 git url 时,实际上是 LDAP 进行了身份验证。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接