author | Lars Hjemli <hjemli@gmail.com> | 2009-08-23 22:04:58 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2009-08-24 08:22:58 (UTC) |
commit | 74061ed5f03e72796450aa3b8ca1cf6ced5d59e2 (patch) (side-by-side diff) | |
tree | 235ab2c29c027f19b00da815af3bf1d2856edc21 /cgit.c | |
parent | a1b3938f711c9b0e5eedad1678535e5779da82c1 (diff) | |
download | cgit-74061ed5f03e72796450aa3b8ca1cf6ced5d59e2.zip cgit-74061ed5f03e72796450aa3b8ca1cf6ced5d59e2.tar.gz cgit-74061ed5f03e72796450aa3b8ca1cf6ced5d59e2.tar.bz2 |
Add support for repo-local cgitrc file
When recursively scanning a directory tree looking for git repositories,
cgit will now parse cgitrc files found within such repositories.
The repo-specific config files can include any repo-specific options
except 'repo.url' and 'repo.path'. Also, in such config files the 'repo.'
prefix can not be used, i.e. the valid options then becomes:
* name
* clone-url
* desc
* ower
* defbranch
* snapshots
* enable-log-filecount
* enable-log-linecount
* max-stats
* module-link
* section
* about-filter
* commit-filter
* source-filter
* readme
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -168,7 +168,7 @@ void config_cb(const char *name, const char *value) if (!ctx.cfg.nocache && ctx.cfg.cache_size) process_cached_repolist(value); else - scan_tree(value); + scan_tree(value, repo_config); else if (!strcmp(name, "source-filter")) ctx.cfg.source_filter = new_filter(value, 1); else if (!strcmp(name, "summary-log")) @@ -476,7 +476,7 @@ static int generate_cached_repolist(const char *path, const char *cached_rc) return errno; } idx = cgit_repolist.count; - scan_tree(path); + scan_tree(path, repo_config); print_repolist(f, &cgit_repolist, idx); if (rename(locked_rc, cached_rc)) fprintf(stderr, "[cgit] Error renaming %s to %s: %s (%d)\n", @@ -500,7 +500,7 @@ static void process_cached_repolist(const char *path) * invoke scan_tree manually. */ if (generate_cached_repolist(path, cached_rc)) - scan_tree(path); + scan_tree(path, repo_config); return; } @@ -559,7 +559,7 @@ static void cgit_parse_args(int argc, const char **argv) if (!strncmp(argv[i], "--scan-tree=", 12) || !strncmp(argv[i], "--scan-path=", 12)) { scan++; - scan_tree(argv[i] + 12); + scan_tree(argv[i] + 12, repo_config); } } if (scan) { |