在我的gitolite.conf中我可以设置
repo COOL_REPOSITORY
RW+ = me
R = @all
这为我提供了写入权限,并且所有其他注册用户都具有对我的存储库的读取权限。现在我的问题是,我是否可以通过将我们的ssh-key存储在我的keydir中来向所有人提供读取权限?
答案 0 :(得分:2)
Gitolite使用ssh,我认为不应该使用ssh来访问未注册的用户。
Git实现了git-daemon和git-http-backend,分别允许通过git://或http://协议进行匿名访问。
答案 1 :(得分:2)
您可以从http VirtualHost配置like I do in my project调用gitolite。
# GitHttp on @PORT_HTTP_HGIT@
Listen @PORT_HTTP_HGIT@
<VirtualHost @FQN@:@PORT_HTTP_HGIT@>
ServerName @FQN@
ServerAlias @HOSTNAME@
SetEnv GIT_PROJECT_ROOT @H@/repositories
SetEnv GIT_HTTP_EXPORT_ALL
SetEnv GITOLITE_HTTP_HOME @H@
ScriptAlias /hgit/ @H@/sbin/gitolite-shell/
SetEnv GIT_HTTP_BACKEND "@H@/usr/local/apps/git/libexec/git-core/git-http-backend"
<Location /hgit>
...
Gitolite不要求用户注册ssh密钥:它只是authorization layer。
但仍然通过http调用gitolite确保您保持其他Gitolite功能活跃,例如:
.gitolite/logs
中:您至少知道哪个IP地址确实克隆/拉/推回您的回购)@all
规则)直接使用git-daemon或直接http访问,而根本不使用Gitolite,意味着放弃任何控制访问。