X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=Documentation%2Fgit-daemon.txt;h=4c357daf6ab23e3b3359388b101be8d363ae3be7;hb=162f41292167a800432fc6bbacfcd9f93a90b0c8;hp=a013a58a7fea696c9c881d9195cf6e652a7f31b0;hpb=f865a2ad981f72423aa1c19412ce57c543801957;p=git.git diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt index a013a58a..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' [--verbose] [--syslog] [--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,32 +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 --------------