summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--cgitrc.5.txt30
1 files changed, 26 insertions, 4 deletions
diff --git a/cgitrc.5.txt b/cgitrc.5.txt
index 65b210f..10b86f3 100644
--- a/cgitrc.5.txt
+++ b/cgitrc.5.txt
@@ -13,65 +13,65 @@ cgitrc - runtime configuration for cgit
13SYNOPSIS 13SYNOPSIS
14-------- 14--------
15Cgitrc contains all runtime settings for cgit, including the list of git 15Cgitrc contains all runtime settings for cgit, including the list of git
16repositories, formatted as a line-separated list of NAME=VALUE pairs. Blank 16repositories, formatted as a line-separated list of NAME=VALUE pairs. Blank
17lines, and lines starting with '#', are ignored. 17lines, and lines starting with '#', are ignored.
18 18
19 19
20LOCATION 20LOCATION
21-------- 21--------
22The default location of cgitrc, defined at compile time, is /etc/cgitrc. At 22The default location of cgitrc, defined at compile time, is /etc/cgitrc. At
23runtime, cgit will consult the environment variable CGIT_CONFIG and, if 23runtime, cgit will consult the environment variable CGIT_CONFIG and, if
24defined, use its value instead. 24defined, use its value instead.
25 25
26 26
27GLOBAL SETTINGS 27GLOBAL SETTINGS
28--------------- 28---------------
29about-filter:: 29about-filter::
30 Specifies a command which will be invoked to format the content of 30 Specifies a command which will be invoked to format the content of
31 about pages (both top-level and for each repository). The command will 31 about pages (both top-level and for each repository). The command will
32 get the content of the about-file on its STDIN, and the STDOUT from the 32 get the content of the about-file on its STDIN, and the STDOUT from the
33 command will be included verbatim on the about page. Default value: 33 command will be included verbatim on the about page. Default value:
34 none. 34 none.
35 35
36agefile:: 36agefile::
37 Specifies a path, relative to each repository path, which can be used 37 Specifies a path, relative to each repository path, which can be used
38 to specify the date and time of the youngest commit in the repository. 38 to specify the date and time of the youngest commit in the repository.
39 The first line in the file is used as input to the "parse_date" 39 The first line in the file is used as input to the "parse_date"
40 function in libgit. Recommended timestamp-format is "yyyy-mm-dd 40 function in libgit. Recommended timestamp-format is "yyyy-mm-dd
41 hh:mm:ss". Default value: "info/web/last-modified". 41 hh:mm:ss". Default value: "info/web/last-modified".
42 42
43cache-root:: 43cache-root::
44 Path used to store the cgit cache entries. Default value: 44 Path used to store the cgit cache entries. Default value:
45 "/var/cache/cgit". 45 "/var/cache/cgit". See also: "MACRO EXPANSION".
46 46
47cache-dynamic-ttl:: 47cache-dynamic-ttl::
48 Number which specifies the time-to-live, in minutes, for the cached 48 Number which specifies the time-to-live, in minutes, for the cached
49 version of repository pages accessed without a fixed SHA1. Default 49 version of repository pages accessed without a fixed SHA1. Default
50 value: "5". 50 value: "5".
51 51
52cache-repo-ttl:: 52cache-repo-ttl::
53 Number which specifies the time-to-live, in minutes, for the cached 53 Number which specifies the time-to-live, in minutes, for the cached
54 version of the repository summary page. Default value: "5". 54 version of the repository summary page. Default value: "5".
55 55
56cache-root-ttl:: 56cache-root-ttl::
57 Number which specifies the time-to-live, in minutes, for the cached 57 Number which specifies the time-to-live, in minutes, for the cached
58 version of the repository index page. Default value: "5". 58 version of the repository index page. Default value: "5".
59 59
60cache-scanrc-ttl:: 60cache-scanrc-ttl::
61 Number which specifies the time-to-live, in minutes, for the result 61 Number which specifies the time-to-live, in minutes, for the result
62 of scanning a path for git repositories. Default value: "15". 62 of scanning a path for git repositories. Default value: "15".
63 63
64cache-size:: 64cache-size::
65 The maximum number of entries in the cgit cache. Default value: "0" 65 The maximum number of entries in the cgit cache. Default value: "0"
66 (i.e. caching is disabled). 66 (i.e. caching is disabled).
67 67
68cache-static-ttl:: 68cache-static-ttl::
69 Number which specifies the time-to-live, in minutes, for the cached 69 Number which specifies the time-to-live, in minutes, for the cached
70 version of repository pages accessed with a fixed SHA1. Default value: 70 version of repository pages accessed with a fixed SHA1. Default value:
71 "5". 71 "5".
72 72
73clone-prefix:: 73clone-prefix::
74 Space-separated list of common prefixes which, when combined with a 74 Space-separated list of common prefixes which, when combined with a
75 repository url, generates valid clone urls for the repository. This 75 repository url, generates valid clone urls for the repository. This
76 setting is only used if `repo.clone-url` is unspecified. Default value: 76 setting is only used if `repo.clone-url` is unspecified. Default value:
77 none. 77 none.
@@ -126,65 +126,65 @@ enable-remote-branches::
126 "repo.enable-remote-branches". 126 "repo.enable-remote-branches".
127 127
128enable-subject-links:: 128enable-subject-links::
129 Flag which, when set to "1", will make cgit use the subject of the 129 Flag which, when set to "1", will make cgit use the subject of the
130 parent commit as link text when generating links to parent commits 130 parent commit as link text when generating links to parent commits
131 in commit view. Default value: "0". See also: 131 in commit view. Default value: "0". See also:
132 "repo.enable-subject-links". 132 "repo.enable-subject-links".
133 133
134enable-tree-linenumbers:: 134enable-tree-linenumbers::
135 Flag which, when set to "1", will make cgit generate linenumber links 135 Flag which, when set to "1", will make cgit generate linenumber links
136 for plaintext blobs printed in the tree view. Default value: "1". 136 for plaintext blobs printed in the tree view. Default value: "1".
137 137
138favicon:: 138favicon::
139 Url used as link to a shortcut icon for cgit. If specified, it is 139 Url used as link to a shortcut icon for cgit. If specified, it is
140 suggested to use the value "/favicon.ico" since certain browsers will 140 suggested to use the value "/favicon.ico" since certain browsers will
141 ignore other values. Default value: none. 141 ignore other values. Default value: none.
142 142
143footer:: 143footer::
144 The content of the file specified with this option will be included 144 The content of the file specified with this option will be included
145 verbatim at the bottom of all pages (i.e. it replaces the standard 145 verbatim at the bottom of all pages (i.e. it replaces the standard
146 "generated by..." message. Default value: none. 146 "generated by..." message. Default value: none.
147 147
148head-include:: 148head-include::
149 The content of the file specified with this option will be included 149 The content of the file specified with this option will be included
150 verbatim in the html HEAD section on all pages. Default value: none. 150 verbatim in the html HEAD section on all pages. Default value: none.
151 151
152header:: 152header::
153 The content of the file specified with this option will be included 153 The content of the file specified with this option will be included
154 verbatim at the top of all pages. Default value: none. 154 verbatim at the top of all pages. Default value: none.
155 155
156include:: 156include::
157 Name of a configfile to include before the rest of the current config- 157 Name of a configfile to include before the rest of the current config-
158 file is parsed. Default value: none. 158 file is parsed. Default value: none. See also: "MACRO EXPANSION".
159 159
160index-header:: 160index-header::
161 The content of the file specified with this option will be included 161 The content of the file specified with this option will be included
162 verbatim above the repository index. This setting is deprecated, and 162 verbatim above the repository index. This setting is deprecated, and
163 will not be supported by cgit-1.0 (use root-readme instead). Default 163 will not be supported by cgit-1.0 (use root-readme instead). Default
164 value: none. 164 value: none.
165 165
166index-info:: 166index-info::
167 The content of the file specified with this option will be included 167 The content of the file specified with this option will be included
168 verbatim below the heading on the repository index page. This setting 168 verbatim below the heading on the repository index page. This setting
169 is deprecated, and will not be supported by cgit-1.0 (use root-desc 169 is deprecated, and will not be supported by cgit-1.0 (use root-desc
170 instead). Default value: none. 170 instead). Default value: none.
171 171
172local-time:: 172local-time::
173 Flag which, if set to "1", makes cgit print commit and tag times in the 173 Flag which, if set to "1", makes cgit print commit and tag times in the
174 servers timezone. Default value: "0". 174 servers timezone. Default value: "0".
175 175
176logo:: 176logo::
177 Url which specifies the source of an image which will be used as a logo 177 Url which specifies the source of an image which will be used as a logo
178 on all cgit pages. Default value: "/cgit.png". 178 on all cgit pages. Default value: "/cgit.png".
179 179
180logo-link:: 180logo-link::
181 Url loaded when clicking on the cgit logo image. If unspecified the 181 Url loaded when clicking on the cgit logo image. If unspecified the
182 calculated url of the repository index page will be used. Default 182 calculated url of the repository index page will be used. Default
183 value: none. 183 value: none.
184 184
185max-atom-items:: 185max-atom-items::
186 Specifies the number of items to display in atom feeds view. Default 186 Specifies the number of items to display in atom feeds view. Default
187 value: "10". 187 value: "10".
188 188
189max-commit-count:: 189max-commit-count::
190 Specifies the number of entries to list per page in "log" view. Default 190 Specifies the number of entries to list per page in "log" view. Default
@@ -208,117 +208,119 @@ max-blob-size::
208 208
209max-stats:: 209max-stats::
210 Set the default maximum statistics period. Valid values are "week", 210 Set the default maximum statistics period. Valid values are "week",
211 "month", "quarter" and "year". If unspecified, statistics are 211 "month", "quarter" and "year". If unspecified, statistics are
212 disabled. Default value: none. See also: "repo.max-stats". 212 disabled. Default value: none. See also: "repo.max-stats".
213 213
214mimetype.<ext>:: 214mimetype.<ext>::
215 Set the mimetype for the specified filename extension. This is used 215 Set the mimetype for the specified filename extension. This is used
216 by the `plain` command when returning blob content. 216 by the `plain` command when returning blob content.
217 217
218module-link:: 218module-link::
219 Text which will be used as the formatstring for a hyperlink when a 219 Text which will be used as the formatstring for a hyperlink when a
220 submodule is printed in a directory listing. The arguments for the 220 submodule is printed in a directory listing. The arguments for the
221 formatstring are the path and SHA1 of the submodule commit. Default 221 formatstring are the path and SHA1 of the submodule commit. Default
222 value: "./?repo=%s&page=commit&id=%s" 222 value: "./?repo=%s&page=commit&id=%s"
223 223
224nocache:: 224nocache::
225 If set to the value "1" caching will be disabled. This settings is 225 If set to the value "1" caching will be disabled. This settings is
226 deprecated, and will not be honored starting with cgit-1.0. Default 226 deprecated, and will not be honored starting with cgit-1.0. Default
227 value: "0". 227 value: "0".
228 228
229noplainemail:: 229noplainemail::
230 If set to "1" showing full author email adresses will be disabled. 230 If set to "1" showing full author email adresses will be disabled.
231 Default value: "0". 231 Default value: "0".
232 232
233noheader:: 233noheader::
234 Flag which, when set to "1", will make cgit omit the standard header 234 Flag which, when set to "1", will make cgit omit the standard header
235 on all pages. Default value: none. See also: "embedded". 235 on all pages. Default value: none. See also: "embedded".
236 236
237project-list:: 237project-list::
238 A list of subdirectories inside of scan-path, relative to it, that 238 A list of subdirectories inside of scan-path, relative to it, that
239 should loaded as git repositories. This must be defined prior to 239 should loaded as git repositories. This must be defined prior to
240 scan-path. Default value: none. See also: scan-path. 240 scan-path. Default value: none. See also: scan-path, "MACRO
241 EXPANSION".
241 242
242readme:: 243readme::
243 Text which will be used as default value for "repo.readme". Default 244 Text which will be used as default value for "repo.readme". Default
244 value: none. 245 value: none.
245 246
246remove-suffix:: 247remove-suffix::
247 If set to "1" and scan-path is enabled, if any repositories are found 248 If set to "1" and scan-path is enabled, if any repositories are found
248 with a suffix of ".git", this suffix will be removed for the url and 249 with a suffix of ".git", this suffix will be removed for the url and
249 name. Default value: "0". See also: scan-path. 250 name. Default value: "0". See also: scan-path.
250 251
251renamelimit:: 252renamelimit::
252 Maximum number of files to consider when detecting renames. The value 253 Maximum number of files to consider when detecting renames. The value
253 "-1" uses the compiletime value in git (for further info, look at 254 "-1" uses the compiletime value in git (for further info, look at
254 `man git-diff`). Default value: "-1". 255 `man git-diff`). Default value: "-1".
255 256
256repo.group:: 257repo.group::
257 Legacy alias for "section". This option is deprecated and will not be 258 Legacy alias for "section". This option is deprecated and will not be
258 supported in cgit-1.0. 259 supported in cgit-1.0.
259 260
260robots:: 261robots::
261 Text used as content for the "robots" meta-tag. Default value: 262 Text used as content for the "robots" meta-tag. Default value:
262 "index, nofollow". 263 "index, nofollow".
263 264
264root-desc:: 265root-desc::
265 Text printed below the heading on the repository index page. Default 266 Text printed below the heading on the repository index page. Default
266 value: "a fast webinterface for the git dscm". 267 value: "a fast webinterface for the git dscm".
267 268
268root-readme:: 269root-readme::
269 The content of the file specified with this option will be included 270 The content of the file specified with this option will be included
270 verbatim below the "about" link on the repository index page. Default 271 verbatim below the "about" link on the repository index page. Default
271 value: none. 272 value: none.
272 273
273root-title:: 274root-title::
274 Text printed as heading on the repository index page. Default value: 275 Text printed as heading on the repository index page. Default value:
275 "Git Repository Browser". 276 "Git Repository Browser".
276 277
277scan-hidden-path:: 278scan-hidden-path::
278 If set to "1" and scan-path is enabled, scan-path will recurse into 279 If set to "1" and scan-path is enabled, scan-path will recurse into
279 directories whose name starts with a period ('.'). Otherwise, 280 directories whose name starts with a period ('.'). Otherwise,
280 scan-path will stay away from such directories (considered as 281 scan-path will stay away from such directories (considered as
281 "hidden"). Note that this does not apply to the ".git" directory in 282 "hidden"). Note that this does not apply to the ".git" directory in
282 non-bare repos. This must be defined prior to scan-path. 283 non-bare repos. This must be defined prior to scan-path.
283 Default value: 0. See also: scan-path. 284 Default value: 0. See also: scan-path.
284 285
285scan-path:: 286scan-path::
286 A path which will be scanned for repositories. If caching is enabled, 287 A path which will be scanned for repositories. If caching is enabled,
287 the result will be cached as a cgitrc include-file in the cache 288 the result will be cached as a cgitrc include-file in the cache
288 directory. If project-list has been defined prior to scan-path, 289 directory. If project-list has been defined prior to scan-path,
289 scan-path loads only the directories listed in the file pointed to by 290 scan-path loads only the directories listed in the file pointed to by
290 project-list. Be advised that only the global settings taken 291 project-list. Be advised that only the global settings taken
291 before the scan-path directive will be applied to each repository. 292 before the scan-path directive will be applied to each repository.
292 Default value: none. See also: cache-scanrc-ttl, project-list. 293 Default value: none. See also: cache-scanrc-ttl, project-list,
294 "MACRO EXPANSION".
293 295
294section:: 296section::
295 The name of the current repository section - all repositories defined 297 The name of the current repository section - all repositories defined
296 after this option will inherit the current section name. Default value: 298 after this option will inherit the current section name. Default value:
297 none. 299 none.
298 300
299section-from-path:: 301section-from-path::
300 A number which, if specified before scan-path, specifies how many 302 A number which, if specified before scan-path, specifies how many
301 path elements from each repo path to use as a default section name. 303 path elements from each repo path to use as a default section name.
302 If negative, cgit will discard the specified number of path elements 304 If negative, cgit will discard the specified number of path elements
303 above the repo directory. Default value: 0. 305 above the repo directory. Default value: 0.
304 306
305side-by-side-diffs:: 307side-by-side-diffs::
306 If set to "1" shows side-by-side diffs instead of unidiffs per 308 If set to "1" shows side-by-side diffs instead of unidiffs per
307 default. Default value: "0". 309 default. Default value: "0".
308 310
309snapshots:: 311snapshots::
310 Text which specifies the default set of snapshot formats generated by 312 Text which specifies the default set of snapshot formats generated by
311 cgit. The value is a space-separated list of zero or more of the 313 cgit. The value is a space-separated list of zero or more of the
312 values "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip". Default value: 314 values "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip". Default value:
313 none. 315 none.
314 316
315source-filter:: 317source-filter::
316 Specifies a command which will be invoked to format plaintext blobs 318 Specifies a command which will be invoked to format plaintext blobs
317 in the tree view. The command will get the blob content on its STDIN 319 in the tree view. The command will get the blob content on its STDIN
318 and the name of the blob as its only command line argument. The STDOUT 320 and the name of the blob as its only command line argument. The STDOUT
319 from the command will be included verbatim as the blob contents, i.e. 321 from the command will be included verbatim as the blob contents, i.e.
320 this can be used to implement e.g. syntax highlighting. Default value: 322 this can be used to implement e.g. syntax highlighting. Default value:
321 none. 323 none.
322 324
323summary-branches:: 325summary-branches::
324 Specifies the number of branches to display in the repository "summary" 326 Specifies the number of branches to display in the repository "summary"
@@ -421,64 +423,84 @@ repo.readme::
421 a colon. For example, "master:docs/readme.mkd" Default value: <readme>. 423 a colon. For example, "master:docs/readme.mkd" Default value: <readme>.
422 424
423repo.snapshots:: 425repo.snapshots::
424 A mask of allowed snapshot-formats for this repo, restricted by the 426 A mask of allowed snapshot-formats for this repo, restricted by the
425 "snapshots" global setting. Default value: <snapshots>. 427 "snapshots" global setting. Default value: <snapshots>.
426 428
427repo.section:: 429repo.section::
428 Override the current section name for this repository. Default value: 430 Override the current section name for this repository. Default value:
429 none. 431 none.
430 432
431repo.source-filter:: 433repo.source-filter::
432 Override the default source-filter. Default value: none. See also: 434 Override the default source-filter. Default value: none. See also:
433 "enable-filter-overrides". 435 "enable-filter-overrides".
434 436
435repo.url:: 437repo.url::
436 The relative url used to access the repository. This must be the first 438 The relative url used to access the repository. This must be the first
437 setting specified for each repo. Default value: none. 439 setting specified for each repo. Default value: none.
438 440
439 441
440REPOSITORY-SPECIFIC CGITRC FILE 442REPOSITORY-SPECIFIC CGITRC FILE
441------------------------------- 443-------------------------------
442When the option "scan-path" is used to auto-discover git repositories, cgit 444When the option "scan-path" is used to auto-discover git repositories, cgit
443will try to parse the file "cgitrc" within any found repository. Such a 445will try to parse the file "cgitrc" within any found repository. Such a
444repo-specific config file may contain any of the repo-specific options 446repo-specific config file may contain any of the repo-specific options
445described above, except "repo.url" and "repo.path". Additionally, the "filter" 447described above, except "repo.url" and "repo.path". Additionally, the "filter"
446options are only acknowledged in repo-specific config files when 448options are only acknowledged in repo-specific config files when
447"enable-filter-overrides" is set to "1". 449"enable-filter-overrides" is set to "1".
448 450
449Note: the "repo." prefix is dropped from the option names in repo-specific 451Note: the "repo." prefix is dropped from the option names in repo-specific
450config files, e.g. "repo.desc" becomes "desc". 452config files, e.g. "repo.desc" becomes "desc".
451 453
452 454
455MACRO EXPANSION
456---------------
457The following cgitrc options supports a simple macro expansion feature,
458where tokens prefixed with "$" are replaced with the value of a similary
459named environment variable:
460
461- cache-root
462- include
463- project-list
464- scan-path
465
466Macro expansion will also happen on the content of $CGIT_CONFIG, if
467defined.
468
469One usage of this feature is virtual hosting, which in its simplest form
470can be accomplished by adding the following line to /etc/cgitrc:
471
472 include=/etc/cgitrc.d/$HTTP_HOST
473
474
453EXAMPLE CGITRC FILE 475EXAMPLE CGITRC FILE
454------------------- 476-------------------
455 477
456.... 478....
457# Enable caching of up to 1000 output entriess 479# Enable caching of up to 1000 output entriess
458cache-size=1000 480cache-size=1000
459 481
460 482
461# Specify some default clone prefixes 483# Specify some default clone prefixes
462clone-prefix=git://example.com ssh://example.com/pub/git http://example.com/git 484clone-prefix=git://example.com ssh://example.com/pub/git http://example.com/git
463 485
464# Specify the css url 486# Specify the css url
465css=/css/cgit.css 487css=/css/cgit.css
466 488
467 489
468# Show extra links for each repository on the index page 490# Show extra links for each repository on the index page
469enable-index-links=1 491enable-index-links=1
470 492
471 493
472# Enable ASCII art commit history graph on the log pages 494# Enable ASCII art commit history graph on the log pages
473enable-commit-graph=1 495enable-commit-graph=1
474 496
475 497
476# Show number of affected files per commit on the log pages 498# Show number of affected files per commit on the log pages
477enable-log-filecount=1 499enable-log-filecount=1
478 500
479 501
480# Show number of added/removed lines per commit on the log pages 502# Show number of added/removed lines per commit on the log pages
481enable-log-linecount=1 503enable-log-linecount=1
482 504
483 505
484# Add a cgit favicon 506# Add a cgit favicon