Autogenerated man pages for v1.2.4-gf61c2
[git.git] / man1 / git-daemon.1
1 .\"Generated by db2man.xsl. Don't modify this, modify the source.
2 .de Sh \" Subsection
3 .br
4 .if t .Sp
5 .ne 5
6 .PP
7 \fB\\$1\fR
8 .PP
9 ..
10 .de Sp \" Vertical space (when we can't use .PP)
11 .if t .sp .5v
12 .if n .sp
13 ..
14 .de Ip \" List item
15 .br
16 .ie \\n(.$>=3 .ne \\$3
17 .el .ne 3
18 .IP "\\$1" \\$2
19 ..
20 .TH "GIT-DAEMON" 1 "" "" ""
21 .SH NAME
22 git-daemon \- A really simple server for git repositories
23 .SH "SYNOPSIS"
24
25 .nf
26 \fIgit\-daemon\fR [\-\-verbose] [\-\-syslog] [\-\-inetd | \-\-port=n] [\-\-export\-all]
27              [\-\-timeout=n] [\-\-init\-timeout=n] [\-\-strict\-paths]
28              [\-\-base\-path=path] [\-\-user\-path | \-\-user\-path=path]
29              [directory...]
30 .fi
31
32 .SH "DESCRIPTION"
33
34
35 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\&.
36
37
38 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\&.
39
40
41 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\&.
42
43
44 This is ideally suited for read\-only updates, ie pulling from git repositories\&.
45
46 .SH "OPTIONS"
47
48 .TP
49 \-\-strict\-paths
50 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\&.
51
52 .TP
53 \-\-base\-path
54 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\&.
55
56 .TP
57 \-\-export\-all
58 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\&.
59
60 .TP
61 \-\-inetd
62 Have the server run as an inetd service\&. Implies \-\-syslog\&.
63
64 .TP
65 \-\-port
66 Listen on an alternative port\&.
67
68 .TP
69 \-\-init\-timeout
70 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)\&.
71
72 .TP
73 \-\-timeout
74 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\&.
75
76 .TP
77 \-\-syslog
78 Log to syslog instead of stderr\&. Note that this option does not imply \-\-verbose, thus by default only error conditions will be logged\&.
79
80 .TP
81 \-\-user\-path, \-\-user\-path=path
82 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\&.
83
84 .TP
85 \-\-verbose
86 Log details about the incoming connections and requested files\&.
87
88 .TP
89 <directory>
90 A directory to add to the whitelist of allowed directories\&. Unless \-\-strict\-paths is specified this will also include subdirectories of each named directory\&.
91
92 .SH "AUTHOR"
93
94
95 Written by Linus Torvalds <torvalds@osdl\&.org>, YOSHIFUJI Hideaki <yoshfuji@linux\-ipv6\&.org> and the git\-list <git@vger\&.kernel\&.org>
96
97 .SH "DOCUMENTATION"
98
99
100 Documentation by Junio C Hamano and the git\-list <git@vger\&.kernel\&.org>\&.
101
102 .SH "GIT"
103
104
105 Part of the \fBgit\fR(7) suite
106