]> gitweb.ps.run Git - ps-cgit/blobdiff - cgitrc.5.txt
Makefile: fetch git tarballs from http://hjemli.net/git/git/
[ps-cgit] / cgitrc.5.txt
index 6fb1083f9586cffd5c869e46d9419b7e996efbbd..26c4bfc5bada6be120ade611118dad00d6903323 100644 (file)
@@ -42,7 +42,7 @@ agefile::
 
 cache-root::
        Path used to store the cgit cache entries. Default value:
-       "/var/cache/cgit".
+       "/var/cache/cgit". See also: "MACRO EXPANSION".
 
 cache-dynamic-ttl::
        Number which specifies the time-to-live, in minutes, for the cached
@@ -90,11 +90,21 @@ embedded::
        Flag which, when set to "1", will make cgit generate a html fragment
        suitable for embedding in other html pages. Default value: none. See
        also: "noheader".
-       
+
+enable-commit-graph::
+       Flag which, when set to "1", will make cgit print an ASCII-art commit
+       history graph to the left of the commit messages in the repository
+       log page. Default value: "0".
+
 enable-filter-overrides::
        Flag which, when set to "1", allows all filter settings to be
        overridden in repository-specific cgitrc files. Default value: none.
 
+enable-gitweb-owner::
+       If set to "1" and scan-path is enabled, we first check each repository
+       for the git config value "gitweb.owner" to determine the owner.
+       Default value: "1". See also: scan-path.
+
 enable-index-links::
        Flag which, when set to "1", will make cgit generate extra links for
        each repo in the repository index (specifically, to the "summary",
@@ -145,7 +155,7 @@ header::
 
 include::
        Name of a configfile to include before the rest of the current config-
-       file is parsed. Default value: none.
+       file is parsed. Default value: none. See also: "MACRO EXPANSION".
 
 index-header::
        The content of the file specified with this option will be included
@@ -227,7 +237,12 @@ noheader::
 project-list::
        A list of subdirectories inside of scan-path, relative to it, that
        should loaded as git repositories. This must be defined prior to
-       scan-path. Default value: none. See also: scan-path.
+       scan-path. Default value: none. See also: scan-path, "MACRO
+       EXPANSION".
+
+readme::
+       Text which will be used as default value for "repo.readme". Default
+       value: none.
 
 remove-suffix::
        If set to "1" and scan-path is enabled, if any repositories are found
@@ -260,19 +275,35 @@ root-title::
        Text printed as heading on the repository index page. Default value:
        "Git Repository Browser".
 
+scan-hidden-path::
+       If set to "1" and scan-path is enabled, scan-path will recurse into
+       directories whose name starts with a period ('.'). Otherwise,
+       scan-path will stay away from such directories (considered as
+       "hidden"). Note that this does not apply to the ".git" directory in
+       non-bare repos. This must be defined prior to scan-path.
+       Default value: 0. See also: scan-path.
+
 scan-path::
        A path which will be scanned for repositories. If caching is enabled,
        the result will be cached as a cgitrc include-file in the cache
        directory. If project-list has been defined prior to scan-path,
        scan-path loads only the directories listed in the file pointed to by
-       project-list. Default value: none. See also: cache-scanrc-ttl,
-       project-list.
+       project-list. Be advised that only the global settings taken
+       before the scan-path directive will be applied to each repository.
+       Default value: none. See also: cache-scanrc-ttl, project-list,
+       "MACRO EXPANSION".
 
 section::
        The name of the current repository section - all repositories defined
        after this option will inherit the current section name. Default value:
        none.
 
+section-from-path::
+       A number which, if specified before scan-path, specifies how many
+       path elements from each repo path to use as a default section name.
+       If negative, cgit will discard the specified number of path elements
+       above the repo directory. Default value: 0.
+
 side-by-side-diffs::
        If set to "1" shows side-by-side diffs instead of unidiffs per
        default. Default value: "0".
@@ -280,7 +311,8 @@ side-by-side-diffs::
 snapshots::
        Text which specifies the default set of snapshot formats generated by
        cgit. The value is a space-separated list of zero or more of the
-       values "tar", "tar.gz", "tar.bz2" and "zip". Default value: none.
+       values "tar", "tar.gz", "tar.bz2", "tar.xz" and "zip". Default value:
+       none.
 
 source-filter::
        Specifies a command which will be invoked to format plaintext blobs
@@ -302,6 +334,13 @@ summary-tags::
        Specifies the number of tags to display in the repository "summary"
        view. Default value: "10".
 
+strict-export::
+       Filename which, if specified, needs to be present within the repository
+       for cgit to allow access to that repository. This can be used to emulate
+       gitweb's EXPORT_OK and STRICT_EXPORT functionality and limit cgit's
+       repositories to match those exported by git-daemon. This option MUST come
+       before 'scan-path'.
+
 virtual-root::
        Url which, if specified, will be used as root for all cgit links. It
        will also cause cgit to generate 'virtual urls', i.e. urls like
@@ -332,6 +371,10 @@ repo.defbranch::
 repo.desc::
        The value to show as repository description. Default value: none.
 
+repo.enable-commit-graph::
+       A flag which can be used to disable the global setting
+       `enable-commit-graph'. Default value: none.
+
 repo.enable-log-filecount::
        A flag which can be used to disable the global setting
        `enable-log-filecount'. Default value: none.
@@ -348,6 +391,21 @@ repo.enable-subject-links::
        A flag which can be used to override the global setting
        `enable-subject-links'. Default value: none.
 
+repo.logo::
+       Url which specifies the source of an image which will be used as a logo
+       on this repo's pages. Default value: global logo.
+
+repo.logo-link::
+       Url loaded when clicking on the cgit logo image. If unspecified the
+       calculated url of the repository index page will be used. Default
+       value: global logo-link.
+
+repo.module-link::
+       Text which will be used as the formatstring for a hyperlink when a
+       submodule is printed in a directory listing. The arguments for the
+       formatstring are the path and SHA1 of the submodule commit. Default
+       value: <module-link>
+
 repo.max-stats::
        Override the default maximum statistics period. Valid values are equal
        to the values specified for the global "max-stats" setting. Default
@@ -366,7 +424,9 @@ repo.path::
 
 repo.readme::
        A path (relative to <repo.path>) which specifies a file to include
-       verbatim as the "About" page for this repo. Default value: none.
+       verbatim as the "About" page for this repo. You may also specify a
+       git refspec by head or by hash by prepending the refspec followed by
+       a colon. For example, "master:docs/readme.mkd" Default value: <readme>.
 
 repo.snapshots::
        A mask of allowed snapshot-formats for this repo, restricted by the
@@ -398,6 +458,26 @@ Note: the "repo." prefix is dropped from the option names in repo-specific
 config files, e.g. "repo.desc" becomes "desc".
 
 
+MACRO EXPANSION
+---------------
+The following cgitrc options supports a simple macro expansion feature,
+where tokens prefixed with "$" are replaced with the value of a similary
+named environment variable:
+
+- cache-root
+- include
+- project-list
+- scan-path
+
+Macro expansion will also happen on the content of $CGIT_CONFIG, if
+defined.
+
+One usage of this feature is virtual hosting, which in its simplest form
+can be accomplished by adding the following line to /etc/cgitrc:
+
+       include=/etc/cgitrc.d/$HTTP_HOST
+
+
 EXAMPLE CGITRC FILE
 -------------------
 
@@ -407,7 +487,7 @@ cache-size=1000
 
 
 # Specify some default clone prefixes
-clone-prefix=git://foobar.com ssh://foobar.com/pub/git http://foobar.com/git
+clone-prefix=git://example.com ssh://example.com/pub/git http://example.com/git
 
 # Specify the css url
 css=/css/cgit.css
@@ -417,6 +497,10 @@ css=/css/cgit.css
 enable-index-links=1
 
 
+# Enable ASCII art commit history graph on the log pages
+enable-commit-graph=1
+
+
 # Show number of affected files per commit on the log pages
 enable-log-filecount=1
 
@@ -438,14 +522,14 @@ max-stats=quarter
 
 
 # Set the title and heading of the repository index page
-root-title=foobar.com git repositories
+root-title=example.com git repositories
 
 
 # Set a subheading for the repository index page
 root-desc=tracking the foobar development
 
 
-# Include some more info about foobar.com on the index page
+# Include some more info about example.com on the index page
 root-readme=/var/www/htdocs/about.html
 
 
@@ -479,14 +563,14 @@ mimetype.svg=image/svg+xml
 repo.url=foo
 repo.path=/pub/git/foo.git
 repo.desc=the master foo repository
-repo.owner=fooman@foobar.com
+repo.owner=fooman@example.com
 repo.readme=info/web/about.html
 
 
 repo.url=bar
 repo.path=/pub/git/bar.git
 repo.desc=the bars for your foo
-repo.owner=barman@foobar.com
+repo.owner=barman@example.com
 repo.readme=info/web/about.html