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