aboutsummaryrefslogtreecommitdiff
path: root/Documentation/git-daemon.txt
diff options
context:
space:
mode:
authorJon Loeliger <jdl@jdl.com>2006-09-19 20:31:51 -0500
committerJunio C Hamano <junkio@cox.net>2006-09-20 11:15:39 -0700
commit49ba83fb67d9e447b86953965ce5f949c6a93b81 (patch)
tree94b3f1bd68329ca9c7d61b572c4283aafc04f2aa /Documentation/git-daemon.txt
parent62e27f273d66afa996cb7aee6cdb25fbedc053f6 (diff)
downloadgit-49ba83fb67d9e447b86953965ce5f949c6a93b81.tar.gz
git-49ba83fb67d9e447b86953965ce5f949c6a93b81.tar.xz
Add virtualization support to git-daemon
Signed-off-by: Jon Loeliger Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'Documentation/git-daemon.txt')
-rw-r--r--Documentation/git-daemon.txt47
1 files changed, 47 insertions, 0 deletions
diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt
index 741f2c69b..51d7c94d7 100644
--- a/Documentation/git-daemon.txt
+++ b/Documentation/git-daemon.txt
@@ -11,6 +11,7 @@ SYNOPSIS
'git-daemon' [--verbose] [--syslog] [--inetd | --port=n] [--export-all]
[--timeout=n] [--init-timeout=n] [--strict-paths]
[--base-path=path] [--user-path | --user-path=path]
+ [--interpolated-path=pathtemplate]
[--enable=service] [--disable=service]
[--allow-override=service] [--forbid-override=service]
[--reuseaddr] [--detach] [--pid-file=file]
@@ -50,6 +51,12 @@ OPTIONS
'git://example.com/hello.git', `git-daemon` will interpret the path
as '/srv/git/hello.git'.
+--interpolated-path=pathtemplate::
+ To support virtual hosting, an interpolated path template can be
+ used to dynamically construct alternate paths. The template
+ supports %H for the target hostname as supplied by the client,
+ and %D for the absolute path of the named repository.
+
--export-all::
Allow pulling from all directories that look like GIT repositories
(have the 'objects' and 'refs' subdirectories), even if they
@@ -135,6 +142,46 @@ upload-pack::
disable it by setting `daemon.uploadpack` configuration
item to `false`.
+EXAMPLES
+--------
+git-daemon as inetd server::
+ To set up `git-daemon` as an inetd service that handles any
+ repository under the whitelisted set of directories, /pub/foo
+ and /pub/bar, place an entry like the following into
+ /etc/inetd all on one line:
++
+------------------------------------------------
+ git stream tcp nowait nobody /usr/bin/git-daemon
+ git-daemon --inetd --verbose
+ --syslog --export-all
+ /pub/foo /pub/bar
+------------------------------------------------
+
+
+git-daemon as inetd server for virtual hosts::
+ To set up `git-daemon` as an inetd service that handles
+ repositories for different virtual hosts, `www.example.com`
+ and `www.example.org`, place an entry like the following into
+ `/etc/inetd` all on one line:
++
+------------------------------------------------
+ git stream tcp nowait nobody /usr/bin/git-daemon
+ git-daemon --inetd --verbose
+ --syslog --export-all
+ --interpolated-path=/pub/%H%D
+ /pub/www.example.org/software
+ /pub/www.example.com/software
+ /software
+------------------------------------------------
++
+In this example, the root-level directory `/pub` will contain
+a subdirectory for each virtual host name supported.
+Further, both hosts advertise repositories simply as
+`git://www.example.com/software/repo.git`. For pre-1.4.0
+clients, a symlink from `/software` into the appropriate
+default repository could be made as well.
+
+
Author
------
Written by Linus Torvalds <torvalds@osdl.org>, YOSHIFUJI Hideaki