.SH "SYNOPSIS"
.nf
-git\-daemon [\-\-verbose] [\-\-syslog] [\-\-inetd | \-\-port=n] [\-\-export\-all]
+\fIgit\-daemon\fR [\-\-verbose] [\-\-syslog] [\-\-inetd | \-\-port=n] [\-\-export\-all]
[\-\-timeout=n] [\-\-init\-timeout=n] [\-\-strict\-paths]
- [\-\-base\-path=path] [directory...]
+ [\-\-base\-path=path] [\-\-user\-path | \-\-user\-path=path]
+ [directory...]
.fi
.SH "DESCRIPTION"
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\&.
+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 \fI\-\-export\-all\fR parameter is specified)\&. If you pass some directory paths as \fIgit\-daemon\fR 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\&.
.TP
\-\-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\&. Home directories (the ~login notation) access is disabled\&.
+Remap all the path requests as relative to the given path\&. This is sort of "GIT root" \- if you run git\-daemon with \fI\-\-base\-path=/srv/git\fR on example\&.com, then if you later try to pull \fIgit://example\&.com/hello\&.git\fR, git\-daemon will interpret the path as \fI/srv/git/hello\&.git\fR\&.
.TP
\-\-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\&.
+Allow pulling from all directories that look like GIT repositories (have the \fIobjects\fR and \fIrefs\fR subdirectories), even if they do not have the \fIgit\-daemon\-export\-ok\fR file\&.
.TP
\-\-inetd
Log to syslog instead of stderr\&. Note that this option does not imply \-\-verbose, thus by default only error conditions will be logged\&.
.TP
+\-\-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 \fIfoo\fR 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\&.
+
+.TP
\-\-verbose
Log details about the incoming connections and requested files\&.