in my gitolite.conf i can set
repo    COOL_REPOSITORY
        RW+     =   me
        R       =   @all
This gives me writing access, and all other REGISTERED users have read access to my repository. Now my question is, can i give read access to everybody, not only to users which i have registered by storing their ssh-keys in my keydir?
You can call gitolite from an http VirtualHost configuration, like I do in my project.
# 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 doesn't require users to register ssh keys: it is only an authorization layer.
But still calling gitolite through http ensure that you keep other Gitolite features active, like:
.gitolite/logs: you still know at least which IP address did clone/pull/push your repo)@all rule at any moment)Using directly git-daemon or a direct http access, without using Gitolite at all, would mean renouncing to any control access.
Gitolite uses ssh, and I do not think ssh should be used to give access to unregistered users.
Git implements git-daemon and git-http-backend to allow anonymous access via the git:// or http:// protocols, respectively.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With