SAC:Git Service

The TracsvnVM machine hosts a few git related experimental services.

= Repositories =

There are currently git repositories under /var/www/git/repos (served by Apache) and under /home/git/gogs-repositories (served by Gogs).

Apache runs as user www-data and thus user www-data owns the files in /var/www/git/repos.

Gogs runs as user git and thus user git owns the files in /home/git/gogs-repositories.

There are also a bunch of git repositories used for various system configurations, but they are not exposed to public services as such.

Some of the repositories from ``/var/www/git/repos`` are being transformed to symlinks to repos under ``/var/www/git/repos``. These repositories will only be writable by the ``git`` user, but are made readable also by the rest of the world.

= Access methods =

HTTPS (Read/Write)
Repos in /var/www/git/repos are served via https://git.osgeo.org/git/REPONAME.

Repos in /home/git/gogs-repositories are served via https://git.osgeo.org/_gogs_/REPONAME.

In both cases, LDAP authentication is allowed. For the /git/REPONAME LDAP authentication is _required_, and you need to use the Git protocol access for an anonymous checkout.

In both cases, http access redirects to https.

TODO: write something about gitweb

GIT protocol (Read Only)
Repos in /var/www/git/repos are served via git protocol with git://git.osgeo.org/git/REPONAME as long as they contain a file named ``git-daemon-export-ok``

Repos in /home/git/gogs-repositories are NOT accessible via git protocol, unless made available via symlinks from ``/var/www/git/repos`` (as done for the GEOS repository, for example)

= See Also =

GitInfrastructureComparison