aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.rst22
-rw-r--r--etc-event.d-local-git-daemon11
2 files changed, 33 insertions, 0 deletions
diff --git a/README.rst b/README.rst
index 1d3813e..b381ee3 100644
--- a/README.rst
+++ b/README.rst
@@ -136,6 +136,28 @@ Example configuration
:literal:
+Using git-daemon
+================
+
+Anonymous read-only access to ``git`` repositories is provided by
+``git-daemon``, which is distributed as part of ``git``. But
+``gitosis`` will still help you manage it: setting ``daemon = yes`` in
+your ``gitosis.conf``, either globally in ``[gitosis]`` or
+per-repository under ``[repo REPOSITORYNAME]``, makes ``gitosis``
+create the ``git-daemon-export-ok`` files in those repository, thus
+telling ``git-daemon`` that publishing those repositories is ok.
+
+To actually run ``git-daemon`` in Ubuntu, put this in
+``/etc/event.d/local-git-daemon``:
+
+.. include:: etc-event.d-local-git-daemon
+ :literal:
+
+For other operating systems, use a similar invocation in an ``init.d``
+script, ``/etc/inittab``, ``inetd.conf``, ``runit``, or something like
+that (good luck).
+
+
Contact
=======
diff --git a/etc-event.d-local-git-daemon b/etc-event.d-local-git-daemon
new file mode 100644
index 0000000..e1349a9
--- /dev/null
+++ b/etc-event.d-local-git-daemon
@@ -0,0 +1,11 @@
+start on startup
+stop on shutdown
+
+exec /usr/bin/git-daemon \
+ --user=git --group=git \
+ --user-path=public-git \
+ --verbose \
+ --reuseaddr \
+ --base-path=/srv/example.com/git/repositories/ \
+ /srv/example.com/git/repositories/
+respawn