author | Lars Hjemli <hjemli@gmail.com> | 2007-05-11 10:13:15 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-05-11 10:13:15 (UTC) |
commit | 5a217ed3e04a6ef7b066ded446582c0dd0fc5d3e (patch) (unidiff) | |
tree | 9b5381ff0902c84006306faeb5a4f507ad4a18d5 /README | |
parent | ded9393b173853d2e960f9b176aeb0bc4ed35be2 (diff) | |
download | cgit-5a217ed3e04a6ef7b066ded446582c0dd0fc5d3e.zip cgit-5a217ed3e04a6ef7b066ded446582c0dd0fc5d3e.tar.gz cgit-5a217ed3e04a6ef7b066ded446582c0dd0fc5d3e.tar.bz2 |
Update README with submodule build info
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | README | 52 |
1 files changed, 39 insertions, 13 deletions
@@ -1,55 +1,81 @@ | |||
1 | 1 | ||
2 | cgit - cgi for git | 2 | cgit - cgi for git |
3 | 3 | ||
4 | 4 | ||
5 | This is an attempt to create a fast web interface for the git scm, using a | 5 | This is an attempt to create a fast web interface for the git scm, using a |
6 | builtin cache to decrease server io-pressure. | 6 | builtin cache to decrease server io-pressure. |
7 | 7 | ||
8 | 8 | ||
9 | Installation | 9 | Installation |
10 | 10 | ||
11 | $ make gitsrc=<path> | 11 | $ make |
12 | $ su | 12 | $ su |
13 | $ make prefix=<path> install | 13 | $ make install |
14 | 14 | ||
15 | This will install cgit.cgi and cgit.css into "/var/www/htdocs/cgit". | ||
15 | 16 | ||
16 | Default value for gitsrc is "../git", and this directory should contain the | 17 | Note: The initial "make" will create a submodule 'git' and clone the git |
17 | git sources. | 18 | repository at git://git.kernel.org/pub/scm/git/git.git in it. If you |
19 | already have a local git git repository that you want to use as origin | ||
20 | for the submodule, run | ||
18 | 21 | ||
19 | Default value for prefix is "/var/www/htdocs/cgit". This directory will | 22 | $ git clone -s <path-to-git-repo> git |
20 | contain "cgit.cgi" and "cgit.css" after 'make install'. | 23 | $ ./submodules.sh -u |
21 | 24 | ||
22 | After installation, httpd.conf probably must be updated with a Directory- | 25 | before running "make". |
23 | section for cgit, possibly something like this: | 26 | |
27 | |||
28 | Dependencies | ||
29 | |||
30 | -git (1.5.2-rc0 or newer, due to git submodule) installed | ||
31 | -zip lib | ||
32 | -crypto lib | ||
33 | -openssl lib | ||
34 | |||
35 | |||
36 | Apache configuration | ||
37 | |||
38 | A new Directory-section must probably be added for cgit, possibly something | ||
39 | like this: | ||
24 | 40 | ||
25 | <Directory "/var/www/htdocs/cgit/"> | 41 | <Directory "/var/www/htdocs/cgit/"> |
26 | AllowOverride None | 42 | AllowOverride None |
27 | Options ExecCGI | 43 | Options ExecCGI |
28 | Order allow,deny | 44 | Order allow,deny |
29 | Allow from all | 45 | Allow from all |
30 | </Directory> | 46 | </Directory> |
31 | 47 | ||
32 | 48 | ||
33 | Runtime configuration | 49 | Runtime configuration |
34 | 50 | ||
35 | The file /etc/cgitrc is read by cgit before handling a request. In addition | 51 | The file /etc/cgitrc is read by cgit before handling a request. In addition |
36 | to runtime parameters, this file also contains a list of the repositories | 52 | to runtime parameters, this file also contains a list of the repositories |
37 | displayed by cgit. | 53 | displayed by cgit. |
38 | 54 | ||
39 | A template cgitrc is shipped with the sources, and all parameters and default | 55 | A template cgitrc is shipped with the sources, and all parameters and default |
40 | values are documented in this file. | 56 | values are documented in this file. |
41 | 57 | ||
42 | 58 | ||
43 | The cache | 59 | The cache |
44 | 60 | ||
45 | When cgit is invoked it looks for a cachefile matching the request and | 61 | When cgit is invoked it looks for a cachefile matching the request and |
46 | returns it to the client. If no such cachefile exist (or if it has expired), | 62 | returns it to the client. If no such cachefile exist (or if it has expired), |
47 | the content for the request is written into the proper cachefile before the | 63 | the content for the request is written into the proper cachefile before the |
48 | file is returned. | 64 | file is returned. |
49 | 65 | ||
50 | If the cachefile has expired but cgit is unable to obtain a lock for it, the | 66 | If the cachefile has expired but cgit is unable to obtain a lock for it, the |
51 | stale cachefile is returned to the client. This is done to favour page | 67 | stale cachefile is returned to the client. This is done to favour page |
52 | throughput over page freshness. | 68 | throughput over page freshness. |
53 | 69 | ||
54 | The generated content contains the complete response to the client, including | 70 | The generated content contains the complete response to the client, including |
55 | the http-headers "Modified" and "Expires". | 71 | the http-headers "Modified" and "Expires". |
72 | |||
73 | |||
74 | The mis(sing) features | ||
75 | |||
76 | Submodule links in the directory listing page have a fixed format per | ||
77 | repository. This should probably be extended to a generic map between | ||
78 | submodule path and url. | ||
79 | |||
80 | |||
81 | The end. | ||