git-daemon(1)
=============

NAME
----
git-daemon - A really simple server for git repositories.

SYNOPSIS
--------
[verse]
'git-daemon' [--verbose] [--syslog] [--inetd | --port=n] [--export-all]
             [--timeout=n] [--init-timeout=n] [--strict-paths]
             [--base-path=path] [--user-path | --user-path=path]
	     [directory...]

DESCRIPTION
-----------
A really simple TCP git daemon that normally listens on port "DEFAULT_GIT_PORT"
aka 9418. It waits for a connection, and will just execute "git-upload-pack"
when it gets one.

It's careful in that there's a magic request-line that gives the command and
what directory to upload, and it verifies that the directory is ok.

It verifies that the directory has the magic file "git-daemon-export-ok", and
it will refuse to export any git directory that hasn't explicitly been marked
for export this way (unless the '--export-all' parameter is specified). If you
pass some directory paths as 'git-daemon' arguments, you can further restrict
the offers to a whitelist comprising of those.

This is ideally suited for read-only updates, ie pulling from git repositories.

OPTIONS
-------
--strict-paths::
	Match paths exactly (i.e. don't allow "/foo/repo" when the real path is
	"/foo/repo.git" or "/foo/repo/.git") and don't do user-relative paths.
	git-daemon will refuse to start when this option is enabled and no
	whitelist is specified.

--base-path::
	Remap all the path requests as relative to the given path.
	This is sort of "GIT root" - if you run git-daemon with
	'--base-path=/srv/git' on example.com, then if you later try to pull
	'git://example.com/hello.git', `git-daemon` will interpret the path
	as '/srv/git/hello.git'.

--export-all::
	Allow pulling from all directories that look like GIT repositories
	(have the 'objects' and 'refs' subdirectories), even if they
	do not have the 'git-daemon-export-ok' file.

--inetd::
	Have the server run as an inetd service. Implies --syslog.

--port::
	Listen on an alternative port.

--init-timeout::
	Timeout between the moment the connection is established and the
	client request is received (typically a rather low value, since
	that should be basically immediate).

--timeout::
	Timeout for specific client sub-requests. This includes the time
	it takes for the server to process the sub-request and time spent
	waiting for next client's request.

--syslog::
	Log to syslog instead of stderr. Note that this option does not imply
	--verbose, thus by default only error conditions will be logged.

--user-path, --user-path=path::
	Allow ~user notation to be used in requests.  When
	specified with no parameter, requests to
	git://host/~alice/foo is taken as a request to access
	'foo' repository in the home directory of user `alice`.
	If `--user-path=path` is specified, the same request is
	taken as a request to access `path/foo` repository in
	the home directory of user `alice`.

--verbose::
	Log details about the incoming connections and requested files.

<directory>::
	A directory to add to the whitelist of allowed directories. Unless
	--strict-paths is specified this will also include subdirectories
	of each named directory.

Author
------
Written by Linus Torvalds <torvalds@osdl.org>, YOSHIFUJI Hideaki
<yoshfuji@linux-ipv6.org> and the git-list <git@vger.kernel.org>

Documentation
--------------
Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT
---
Part of the gitlink:git[7] suite

