cgitrc.5.txt (view raw)
1CGITRC
2======
3
4
5NAME
6----
7 cgitrc - runtime configuration for cgit
8
9
10DESCRIPTION
11-----------
12Cgitrc contains all runtime settings for cgit, including the list of git
13repositories, formatted as a line-separated list of NAME=VALUE pairs. Blank
14lines, and lines starting with '#', are ignored.
15
16
17GLOBAL SETTINGS
18---------------
19agefile
20 Specifies a path, relative to each repository path, which can be used
21 to specify the date and time of the youngest commit in the repository.
22 The first line in the file is used as input to the "parse_date"
23 function in libgit. Recommended timestamp-format is "yyyy-mm-dd
24 hh:mm:ss". Default value: "info/web/last-modified".
25
26cache-root
27 Path used to store the cgit cache entries. Default value:
28 "/var/cache/cgit".
29
30cache-dynamic-ttl
31 Number which specifies the time-to-live, in minutes, for the cached
32 version of repository pages accessed without a fixed SHA1. Default
33 value: "5".
34
35cache-repo-ttl
36 Number which specifies the time-to-live, in minutes, for the cached
37 version of the repository summary page. Default value: "5".
38
39cache-root-ttl
40 Number which specifies the time-to-live, in minutes, for the cached
41 version of the repository index page. Default value: "5".
42
43cache-size
44 The maximum number of entries in the cgit cache. Default value: "0"
45 (i.e. caching is disabled).
46
47cache-static-ttl
48 Number which specifies the time-to-live, in minutes, for the cached
49 version of repository pages accessed with a fixed SHA1. Default value:
50 "5".
51
52clone-prefix
53 Space-separated list of common prefixes which, when combined with a
54 repository url, generates valid clone urls for the repository. This
55 setting is only used if `repo.clone-url` is unspecified. Default value:
56 none.
57
58css
59 Url which specifies the css document to include in all cgit pages.
60 Default value: "/cgit.css".
61
62enable-index-links
63 Flag which, when set to "1", will make cgit generate extra links for
64 each repo in the repository index (specifically, to the "summary",
65 "commit" and "tree" pages). Default value: "0".
66
67enable-log-filecount
68 Flag which, when set to "1", will make cgit print the number of
69 modified files for each commit on the repository log page. Default
70 value: "0".
71
72enable-log-linecount
73 Flag which, when set to "1", will make cgit print the number of added
74 and removed lines for each commit on the repository log page. Default
75 value: "0".
76
77favicon
78 Url used as link to a shortcut icon for cgit. If specified, it is
79 suggested to use the value "/favicon.ico" since certain browsers will
80 ignore other values. Default value: none.
81
82footer
83 The content of the file specified with this option will be included
84 verbatim at the bottom of all pages (i.e. it replaces the standard
85 "generated by..." message. Default value: none.
86
87include
88 Name of a configfile to include before the rest of the current config-
89 file is parsed. Default value: none.
90
91index-header
92 The content of the file specified with this option will be included
93 verbatim above the repository index. This setting is deprecated, and
94 will not be supported by cgit-1.0 (use root-readme instead). Default
95 value: none.
96
97index-info
98 The content of the file specified with this option will be included
99 verbatim below the heading on the repository index page. This setting
100 is deprecated, and will not be supported by cgit-1.0 (use root-desc
101 instead). Default value: none.
102
103local-time
104 Flag which, if set to "1", makes cgit print commit and tag times in the
105 servers timezone. Default value: "0".
106
107logo
108 Url which specifies the source of an image which will be used as a logo
109 on all cgit pages.
110
111logo-link
112 Url loaded when clicking on the cgit logo image. If unspecified the
113 calculated url of the repository index page will be used. Default
114 value: none.
115
116max-commit-count
117 Specifies the number of entries to list per page in "log" view. Default
118 value: "50".
119
120max-message-length
121 Specifies the maximum number of commit message characters to display in
122 "log" view. Default value: "80".
123
124max-repo-count
125 Specifies the number of entries to list per page on the repository
126 index page. Default value: "50".
127
128max-repodesc-length
129 Specifies the maximum number of repo description characters to display
130 on the repository index page. Default value: "80".
131
132max-stats
133 Set the default maximum statistics period. Valid values are "week",
134 "month", "quarter" and "year". If unspecified, statistics are
135 disabled. Default value: none. See also: "repo.max-stats".
136
137module-link
138 Text which will be used as the formatstring for a hyperlink when a
139 submodule is printed in a directory listing. The arguments for the
140 formatstring are the path and SHA1 of the submodule commit. Default
141 value: "./?repo=%s&page=commit&id=%s"
142
143nocache
144 If set to the value "1" caching will be disabled. This settings is
145 deprecated, and will not be honored starting with cgit-1.0. Default
146 value: "0".
147
148renamelimit
149 Maximum number of files to consider when detecting renames. The value
150 "-1" uses the compiletime value in git (for further info, look at
151 `man git-diff`). Default value: "-1".
152
153repo.group
154 A value for the current repository group, which all repositories
155 specified after this setting will inherit. Default value: none.
156
157robots
158 Text used as content for the "robots" meta-tag. Default value:
159 "index, nofollow".
160
161root-desc
162 Text printed below the heading on the repository index page. Default
163 value: "a fast webinterface for the git dscm".
164
165root-readme:
166 The content of the file specified with this option will be included
167 verbatim below the "about" link on the repository index page. Default
168 value: none.
169
170root-title
171 Text printed as heading on the repository index page. Default value:
172 "Git Repository Browser".
173
174snapshots
175 Text which specifies the default (and allowed) set of snapshot formats
176 supported by cgit. The value is a space-separated list of zero or more
177 of the following values:
178 "tar" uncompressed tar-file
179 "tar.gz" gzip-compressed tar-file
180 "tar.bz2" bzip-compressed tar-file
181 "zip" zip-file
182 Default value: none.
183
184summary-branches
185 Specifies the number of branches to display in the repository "summary"
186 view. Default value: "10".
187
188summary-log
189 Specifies the number of log entries to display in the repository
190 "summary" view. Default value: "10".
191
192summary-tags
193 Specifies the number of tags to display in the repository "summary"
194 view. Default value: "10".
195
196virtual-root
197 Url which, if specified, will be used as root for all cgit links. It
198 will also cause cgit to generate 'virtual urls', i.e. urls like
199 '/cgit/tree/README' as opposed to '?r=cgit&p=tree&path=README'. Default
200 value: none.
201 NOTE: cgit has recently learned how to use PATH_INFO to achieve the
202 same kind of virtual urls, so this option will probably be deprecated.
203
204REPOSITORY SETTINGS
205-------------------
206repo.clone-url
207 A list of space-separated urls which can be used to clone this repo.
208 Default value: none.
209
210repo.defbranch
211 The name of the default branch for this repository. If no such branch
212 exists in the repository, the first branch name (when sorted) is used
213 as default instead. Default value: "master".
214
215repo.desc
216 The value to show as repository description. Default value: none.
217
218repo.enable-log-filecount
219 A flag which can be used to disable the global setting
220 `enable-log-filecount'. Default value: none.
221
222repo.enable-log-linecount
223 A flag which can be used to disable the global setting
224 `enable-log-linecount'. Default value: none.
225
226repo.max-stats
227 Override the default maximum statistics period. Valid values are equal
228 to the values specified for the global "max-stats" setting. Default
229 value: none.
230
231repo.name
232 The value to show as repository name. Default value: <repo.url>.
233
234repo.owner
235 A value used to identify the owner of the repository. Default value:
236 none.
237
238repo.path
239 An absolute path to the repository directory. For non-bare repositories
240 this is the .git-directory. Default value: none.
241
242repo.readme
243 A path (relative to <repo.path>) which specifies a file to include
244 verbatim as the "About" page for this repo. Default value: none.
245
246repo.snapshots
247 A mask of allowed snapshot-formats for this repo, restricted by the
248 "snapshots" global setting. Default value: <snapshots>.
249
250repo.url
251 The relative url used to access the repository. This must be the first
252 setting specified for each repo. Default value: none.
253
254
255EXAMPLE CGITRC FILE
256-------------------
257
258# Enable caching of up to 1000 output entriess
259cache-size=1000
260
261
262# Specify some default clone prefixes
263clone-prefix=git://foobar.com ssh://foobar.com/pub/git http://foobar.com/git
264
265# Specify the css url
266css=/css/cgit.css
267
268
269# Show extra links for each repository on the index page
270enable-index-links=1
271
272
273# Show number of affected files per commit on the log pages
274enable-log-filecount=1
275
276
277# Show number of added/removed lines per commit on the log pages
278enable-log-linecount=1
279
280
281# Add a cgit favicon
282favicon=/favicon.ico
283
284
285# Use a custom logo
286logo=/img/mylogo.png
287
288
289# Enable statistics per week, month and quarter
290max-stats=quarter
291
292
293# Set the title and heading of the repository index page
294root-title=foobar.com git repositories
295
296
297# Set a subheading for the repository index page
298root-desc=tracking the foobar development
299
300
301# Include some more info about foobar.com on the index page
302root-readme=/var/www/htdocs/about.html
303
304
305# Allow download of tar.gz, tar.bz and zip-files
306snapshots=tar.gz tar.bz zip
307
308
309##
310## List of repositories.
311## PS: Any repositories listed when repo.group is unset will not be
312## displayed under a group heading
313## PPS: This list could be kept in a different file (e.g. '/etc/cgitrepos')
314## and included like this:
315## include=/etc/cgitrepos
316##
317
318
319repo.url=foo
320repo.path=/pub/git/foo.git
321repo.desc=the master foo repository
322repo.owner=fooman@foobar.com
323repo.readme=info/web/about.html
324
325
326repo.url=bar
327repo.path=/pub/git/bar.git
328repo.desc=the bars for your foo
329repo.owner=barman@foobar.com
330repo.readme=info/web/about.html
331
332
333# The next repositories will be displayed under the 'extras' heading
334repo.group=extras
335
336
337repo.url=baz
338repo.path=/pub/git/baz.git
339repo.desc=a set of extensions for bar users
340
341repo.url=wiz
342repo.path=/pub/git/wiz.git
343repo.desc=the wizard of foo
344
345
346# Add some mirrored repositories
347repo.group=mirrors
348
349
350repo.url=git
351repo.path=/pub/git/git.git
352repo.desc=the dscm
353
354
355repo.url=linux
356repo.path=/pub/git/linux.git
357repo.desc=the kernel
358
359# Disable adhoc downloads of this repo
360repo.snapshots=0
361
362# Disable line-counts for this repo
363repo.enable-log-linecount=0
364
365# Restrict the max statistics period for this repo
366repo.max-stats=month
367
368
369BUGS
370----
371Comments currently cannot appear on the same line as a setting; the comment
372will be included as part of the value. E.g. this line:
373
374 robots=index # allow indexing
375
376will generate the following html element:
377
378 <meta name='robots' content='index # allow indexing'/>
379
380
381
382AUTHOR
383------
384Lars Hjemli <hjemli@gmail.com>