Files
git/gitweb
Alan Chandler b2d3476e15 Gitweb - provide site headers and footers
This allows web sites with a header and footer standard for each page
to add them to the pages produced by gitweb.

Two new variables $site_header and $site_footer are defined (default
to null) each of which can specify a file containing the header and
footer html.

In addition, if the $stylesheet variable is undefined, a new array
@stylesheets (which defaults to a single element of gitweb.css) can be
used to specify more than one style sheet.  This allows the clasical
gitweb.css styles to be retained, but a site wide style sheet used
within the header and footer areas.

Signed-off-by: Alan Chandler <alan@chandlerfamily.org.uk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-10-04 15:00:49 -07:00
..
2006-08-01 15:55:19 -07:00

GIT web Interface
=================

The one working on:
  http://www.kernel.org/git/

From the git version 1.4.0 gitweb is bundled with git.


How to configure gitweb for your local system
---------------------------------------------

You can specify the following configuration variables when building GIT:
 * GITWEB_SITENAME
   Shown in the title of all generated pages, defaults to the servers name.
 * GITWEB_PROJECTROOT
   The root directory for all projects shown by gitweb.
 * GITWEB_LIST
   points to a directory to scan for projects (defaults to project root)
   or to a file for explicit listing of projects.
 * GITWEB_HOMETEXT
   points to an .html file which is included on the gitweb project
   overview page.
 * GITWEB_CSS
   Points to the location where you put gitweb.css on your web server.
 * GITWEB_LOGO
   Points to the location where you put git-logo.png on your web server.
 * GITWEB_CONFIG
   This file will be loaded using 'require'.  If the environment
   $GITWEB_CONFIG is set when gitweb.cgi is executed the file in the
   environment variable will be loaded instead of the file
   specified when gitweb.cgi was created.


Webserver configuration
-----------------------

If you want to have one URL for both gitweb and your http://
repositories, you can configure apache like this:

<VirtualHost www:80>
    ServerName git.domain.org
    DocumentRoot /pub/git
    RewriteEngine on
    RewriteRule ^/(.*\.git/(?!/?(info|objects|refs)).*)?$ /cgi-bin/gitweb.cgi%{REQUEST_URI}  [L,PT]
</VirtualHost>

The above configuration expects your public repositories to live under
/pub/git and will serve them as http://git.domain.org/dir-under-pub-git,
both as cloneable GIT URL and as browseable gitweb interface.
If you then start your git-daemon with --base-path=/pub/git --export-all
then you can even use the git:// URL with exactly the same path.



Originally written by:
  Kay Sievers <kay.sievers@vrfy.org>

Any comment/question/concern to:
  Git mailing list <git@vger.kernel.org>