git-instaweb: add Python builtin http.server support
commit2eb14bb2d41b27d23120206bbe3d409a83cf042f
authorArti Zirk <arti.zirk@gmail.com>
Mon, 28 Jan 2019 13:24:59 +0000 (28 15:24 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 28 Jan 2019 18:57:44 +0000 (28 10:57 -0800)
tree3a02eef44a258570460be6201264cd771c48594b
parent16a465bc018d09e9d7bbbdc5f40a7fb99c21f8ef
git-instaweb: add Python builtin http.server support

With this patch it is possible to launch git-instaweb by using
Python http.server CGI handler via `-d python` option.

git-instaweb generates a small wrapper around the http.server
(in GIT_DIR/gitweb/) that address a limitation of the CGI handler
where CGI scripts have to be in a cgi-bin subdirectory and
directory index can't be easily changed. To keep the implementation
small, gitweb is running on url `/cgi-bin/gitweb.cgi` and an automatic
redirection is done when opening `/`.

The generated wrapper is compatible with both Python 2 and 3.

Python is by default installed on most modern Linux distributions
which enables running `git instaweb -d python` without needing
anything else.

Signed-off-by: Arti Zirk <arti.zirk@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-instaweb.txt
git-instaweb.sh