X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=Documentation%2Fgit-daemon.txt;h=4c357daf6ab23e3b3359388b101be8d363ae3be7;hb=162f41292167a800432fc6bbacfcd9f93a90b0c8;hp=5fc45f215835610c7780ada5b5dc36f590b836da;hpb=51017101c7a308745ba3c04944457f1dc6a55780;p=git.git diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt index 5fc45f21..4c357daf 100644 --- a/Documentation/git-daemon.txt +++ b/Documentation/git-daemon.txt @@ -3,11 +3,15 @@ git-daemon(1) NAME ---- -git-daemon - A really simple server for GIT repositories. +git-daemon - A really simple server for git repositories SYNOPSIS -------- -'git-daemon' [--inetd | --port=n] +[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 ----------- @@ -16,25 +20,77 @@ 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. +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. +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. +This is ideally suited for read-only updates, i.e., 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. + 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. + +:: + 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 and YOSHIFUJI Hideaki +Written by Linus Torvalds , YOSHIFUJI Hideaki + and the git-list Documentation -------------- @@ -42,5 +98,5 @@ Documentation by Junio C Hamano and the git-list . GIT --- -Part of the link:git.html[git] suite +Part of the gitlink:git[7] suite