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