gitolite 上的无密钥公共只读访问

Chr*_*ris 5 git gitolite

我想知道是否有可能将 gitolite 配置为让任何人克隆存储库而无需完成整个公钥歌曲和舞蹈。

显然,我不希望人们能够在没有密钥的情况下更改 repo。

use*_*686 4

公共 Git 访问有两个选项:

  1. Git 协议,由git 守护进程处理:

    git daemon --base-path /srv/git
    
    Run Code Online (Sandbox Code Playgroud)

    如果您在 example.com上运行git daemon--base-path /srv/git,那么如果您稍后尝试拉取git://example.com/hello.gitgit daemon会将路径解释为/srv/git/hello.git

    对于多个“虚拟主机”,--interpolated-path /srv/git/%H/%D会将其映射到/srv/git/example.com/hello.git.

    该选项提供了类似于--user-path“userdir”的翻译。git://example.com/~user/hello.git/home/user/hello.git

    您可以从 xinetd运行git 守护进程 ,或使用选项 ( )作为后台守护进程。--detachsudo -u nobody git daemon --detach <other options>

  2. 智能 HTTP,需要 Web 服务器:Pro Git 上的说明

    设置起来有点复杂,但更容易跨越代理和防火墙(这在某些环境中可能是一个优势)。

    也可以通过 HTTP 进行推送 – 确保您不会意外启用它。

  • 另外,您可以使用[Gitolite配置中的特殊`daemon`用户](http://sitaramc.github.com/gitolite/doc/2-admin.html#gwd)自动创建特殊的`git-daemon-在允许通过“git://” URL 访问之前,“git daemon” 会查找“export-ok” 文件。 (3认同)