注意:这已在较新版本的 gitolite 中进行了重新设计;这是the relevant documentation。您仍然可以像以前一样向特殊用户“gitweb”授予读取权限,您还可以在 repos 中添加这样的行:
config gitweb.owner = owner name
config gitweb.description = some description
config gitweb.category = some category
如果为 repo 设置了这些配置参数中的至少一个,它将被 gitweb 访问。
和以前一样,“gitweb 可以访问”意味着“神奇地添加到 projects.list”。
原答案:
Gitolite 明智地默认为最严格的权限 - 在您告诉它允许之前,没有人可以看到存储库。这当然包括 gitweb。为了让 gitweb 看到一个存储库,引用 gitolite.conf documentation:
同样,授予 gitweb 读取权限以允许 gitweb CGI 显示 repo。像这样的:
repo foo bar baz
R = gitweb
这使您可以快速地为 gitweb 和/或守护进程访问提供多个存储库。
但是,为项目设置描述也会启用 gitweb 权限,因此您可以根据需要这样做。当然,在这种情况下,您必须分别处理每个 repo。在 gitolite.conf 中添加这样的行:
foo = "some description"
bar = "some other description"
baz = "yet another description"
如果你愿意,你也可以为 gitweb 指定一个所有者;例如我可能会使用:
gitolite "Sitaram Chamarty" = "fast, secure, fine-grained, access control for git"
如果您告诉 Gitolite 通过其中一种方法使其可用于 gitweb,则 Gitolite 仅将存储库放置在 projects.list 中。它也会使用所有者和描述来填充projects.list,所以通常最好这样做。请注意,如果您的 Web 服务器以与 Gitolite 不同的用户身份运行,您需要确保它以某种方式可以访问相关目录,默认情况下这些目录对其他用户是隐藏的。有一些关于更复杂案例的示例文档:gitolite-gitweb-http-backend