blob: 471dcfb691bb9f1361c80daa17b522ca74193314 [file] [log] [blame]
Junio C Hamano0a8f4f02006-06-10 11:20:59 -07001GIT web Interface
Martin Waitz128eead2006-10-03 10:03:28 +02002=================
Junio C Hamano0a8f4f02006-06-10 11:20:59 -07003
Jakub Narebski175fb6c2006-06-17 08:53:45 +02004From the git version 1.4.0 gitweb is bundled with git.
Junio C Hamano0a8f4f02006-06-10 11:20:59 -07005
Martin Waitz5d043a32006-08-01 21:34:08 +02006
Jakub Narebski07ea4df2011-10-16 13:07:32 +02007Build time gitweb configuration
8-------------------------------
9There are many configuration variables which affect building gitweb (among
10others creating gitweb.cgi out of gitweb.perl by replacing placeholders such
11as `++GIT_BINDIR++` by their build-time values).
12
13Building and installing gitweb is described in gitweb's INSTALL file
14(in 'gitweb/INSTALL').
15
16
Petr Baudis45a3b122006-10-07 15:17:47 +020017Runtime gitweb configuration
18----------------------------
Jakub Narebski131d6af2011-07-25 00:29:18 +020019Gitweb obtains configuration data from the following sources in the
20following order:
21
221. built-in values (some set during build stage),
232. common system-wide configuration file (`GITWEB_CONFIG_COMMON`,
24 defaults to '/etc/gitweb-common.conf'),
253. 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
30Values obtained in later configuration files override values obtained earlier
31in above sequence.
32
33You can read defaults in system-wide GITWEB_CONFIG_SYSTEM from GITWEB_CONFIG
34by adding
35
36 read_config_file($GITWEB_CONFIG_SYSTEM);
37
38at very beginning of per-instance GITWEB_CONFIG file. In this case
39settings in said per-instance file will override settings from
40system-wide configuration file. Note that read_config_file checks
41itself that the $GITWEB_CONFIG_SYSTEM file exists.
42
Petr Baudis45a3b122006-10-07 15:17:47 +020043The most notable thing that is not configurable at compile time are the
Jakub Narebski61fd2552007-12-03 00:22:02 +010044optional features, stored in the '%features' variable.
45
46Ultimate description on how to reconfigure the default features setting
47in your `GITWEB_CONFIG` or per-project in `project.git/config` can be found
48as comments inside 'gitweb.cgi'.
49
Drew Northup6d3902b2011-10-16 13:07:31 +020050See also gitweb.conf(5) manpage.
Jakub Narebski61fd2552007-12-03 00:22:02 +010051
52
Jakub Narebski07ea4df2011-10-16 13:07:32 +020053Web server configuration
54------------------------
55Gitweb can be run as CGI script, as legacy mod_perl application (using
56ModPerl::Registry), and as FastCGI script. You can find some simple examples
57in "Example web server configuration" section in INSTALL file for gitweb (in
58gitweb/INSTALL).
Jakub Narebskie67c9e32008-07-08 00:07:53 +020059
Jakub Narebski07ea4df2011-10-16 13:07:32 +020060See "Webserver configuration" and "Advanced web server setup" sections in
61gitweb(1) manpage.
Jakub Narebskie67c9e32008-07-08 00:07:53 +020062
Jakub Narebskie67c9e32008-07-08 00:07:53 +020063
Jakub Narebski07ea4df2011-10-16 13:07:32 +020064AUTHORS
65-------
Junio C Hamanoee0d3232006-08-01 15:56:28 -070066Originally written by:
Junio C Hamano0a8f4f02006-06-10 11:20:59 -070067 Kay Sievers <kay.sievers@vrfy.org>
Junio C Hamanoee0d3232006-08-01 15:56:28 -070068
69Any comment/question/concern to:
70 Git mailing list <git@vger.kernel.org>