Merge branch 'tg/maint-cache-name-compare' into tg/ce-namelen-field
[git] / gitweb / README
1 GIT web Interface
2 =================
3
4 The one working on:
5   http://git.kernel.org/
6
7 From the git version 1.4.0 gitweb is bundled with git.
8
9
10 Build time gitweb configuration
11 -------------------------------
12 There are many configuration variables which affect building gitweb (among
13 others creating gitweb.cgi out of gitweb.perl by replacing placeholders such
14 as `++GIT_BINDIR++` by their build-time values).
15
16 Building and installing gitweb is described in gitweb's INSTALL file
17 (in 'gitweb/INSTALL').
18
19
20 Runtime gitweb configuration
21 ----------------------------
22 Gitweb obtains configuration data from the following sources in the
23 following order:
24
25 1. built-in values (some set during build stage),
26 2. common system-wide configuration file (`GITWEB_CONFIG_COMMON`,
27    defaults to '/etc/gitweb-common.conf'),
28 3. either per-instance configuration file (`GITWEB_CONFIG`, defaults to
29    'gitweb_config.perl' in the same directory as the installed gitweb),
30    or if it does not exists then system-wide configuration file
31    (`GITWEB_CONFIG_SYSTEM`, defaults to '/etc/gitweb.conf').
32
33 Values obtained in later configuration files override values obtained earlier
34 in above sequence.
35
36 You can read defaults in system-wide GITWEB_CONFIG_SYSTEM from GITWEB_CONFIG
37 by adding
38
39   read_config_file($GITWEB_CONFIG_SYSTEM);
40
41 at very beginning of per-instance GITWEB_CONFIG file.  In this case
42 settings in said per-instance file will override settings from
43 system-wide configuration file.  Note that read_config_file checks
44 itself that the $GITWEB_CONFIG_SYSTEM file exists.
45
46 The most notable thing that is not configurable at compile time are the
47 optional features, stored in the '%features' variable.
48
49 Ultimate description on how to reconfigure the default features setting
50 in your `GITWEB_CONFIG` or per-project in `project.git/config` can be found
51 as comments inside 'gitweb.cgi'.
52
53 See also gitweb.conf(5) manpage.
54
55
56 Web server configuration
57 ------------------------
58 Gitweb can be run as CGI script, as legacy mod_perl application (using
59 ModPerl::Registry), and as FastCGI script.  You can find some simple examples
60 in "Example web server configuration" section in INSTALL file for gitweb (in
61 gitweb/INSTALL).
62
63 See "Webserver configuration" and "Advanced web server setup" sections in
64 gitweb(1) manpage.
65
66
67 AUTHORS
68 -------
69 Originally written by:
70   Kay Sievers <kay.sievers@vrfy.org>
71
72 Any comment/question/concern to:
73   Git mailing list <git@vger.kernel.org>