summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--cgitrc7
-rw-r--r--shared.c4
2 files changed, 11 insertions, 0 deletions
diff --git a/cgitrc b/cgitrc
index 34ea116..796a62c 100644
--- a/cgitrc
+++ b/cgitrc
@@ -36,16 +36,23 @@
36## The cgit repo on hjemli.net uses the the following command in it's 36## The cgit repo on hjemli.net uses the the following command in it's
37## post-receive hook to update the age-file: 37## post-receive hook to update the age-file:
38## git-for-each-ref --format="%(committerdate)" --sort=-committerdate \ 38## git-for-each-ref --format="%(committerdate)" --sort=-committerdate \
39## --count=1 > $GIT_DIR/info/web/last-modifie 39## --count=1 > $GIT_DIR/info/web/last-modifie
40## 40##
41#agefile=info/web/last-modified 41#agefile=info/web/last-modified
42 42
43 43
44## Git detects renames, but with a limit on the number of files to
45## consider. This option can be used to specify another limit (or -1 to
46## use the default limit).
47##
48#renamelimit=-1
49
50
44## Specify a root for virtual urls. This makes cgit generate urls like 51## Specify a root for virtual urls. This makes cgit generate urls like
45## 52##
46## http://localhost/git/repo/log/?h=branch 53## http://localhost/git/repo/log/?h=branch
47## 54##
48## instead of 55## instead of
49## 56##
50## http://localhost/cgit/cgit.cgi?url=repo/log&h=branch 57## http://localhost/cgit/cgit.cgi?url=repo/log&h=branch
51## 58##
diff --git a/shared.c b/shared.c
index 0fe513f..0a6a5ed 100644
--- a/shared.c
+++ b/shared.c
@@ -33,16 +33,17 @@ int cgit_enable_log_filecount = 0;
33int cgit_enable_log_linecount = 0; 33int cgit_enable_log_linecount = 0;
34int cgit_max_lock_attempts = 5; 34int cgit_max_lock_attempts = 5;
35int cgit_cache_root_ttl = 5; 35int cgit_cache_root_ttl = 5;
36int cgit_cache_repo_ttl = 5; 36int cgit_cache_repo_ttl = 5;
37int cgit_cache_dynamic_ttl = 5; 37int cgit_cache_dynamic_ttl = 5;
38int cgit_cache_static_ttl = -1; 38int cgit_cache_static_ttl = -1;
39int cgit_cache_max_create_time = 5; 39int cgit_cache_max_create_time = 5;
40int cgit_summary_log = 0; 40int cgit_summary_log = 0;
41int cgit_renamelimit = -1;
41 42
42int cgit_max_msg_len = 60; 43int cgit_max_msg_len = 60;
43int cgit_max_repodesc_len = 60; 44int cgit_max_repodesc_len = 60;
44int cgit_max_commit_count = 50; 45int cgit_max_commit_count = 50;
45 46
46int cgit_query_has_symref = 0; 47int cgit_query_has_symref = 0;
47int cgit_query_has_sha1 = 0; 48int cgit_query_has_sha1 = 0;
48 49
@@ -177,16 +178,18 @@ void cgit_global_config_cb(const char *name, const char *value)
177 else if (!strcmp(name, "max-repodesc-length")) 178 else if (!strcmp(name, "max-repodesc-length"))
178 cgit_max_repodesc_len = atoi(value); 179 cgit_max_repodesc_len = atoi(value);
179 else if (!strcmp(name, "max-commit-count")) 180 else if (!strcmp(name, "max-commit-count"))
180 cgit_max_commit_count = atoi(value); 181 cgit_max_commit_count = atoi(value);
181 else if (!strcmp(name, "summary-log")) 182 else if (!strcmp(name, "summary-log"))
182 cgit_summary_log = atoi(value); 183 cgit_summary_log = atoi(value);
183 else if (!strcmp(name, "agefile")) 184 else if (!strcmp(name, "agefile"))
184 cgit_agefile = xstrdup(value); 185 cgit_agefile = xstrdup(value);
186 else if (!strcmp(name, "renamelimit"))
187 cgit_renamelimit = atoi(value);
185 else if (!strcmp(name, "repo.group")) 188 else if (!strcmp(name, "repo.group"))
186 cgit_repo_group = xstrdup(value); 189 cgit_repo_group = xstrdup(value);
187 else if (!strcmp(name, "repo.url")) 190 else if (!strcmp(name, "repo.url"))
188 cgit_repo = add_repo(value); 191 cgit_repo = add_repo(value);
189 else if (!strcmp(name, "repo.name")) 192 else if (!strcmp(name, "repo.name"))
190 cgit_repo->name = xstrdup(value); 193 cgit_repo->name = xstrdup(value);
191 else if (cgit_repo && !strcmp(name, "repo.path")) 194 else if (cgit_repo && !strcmp(name, "repo.path"))
192 cgit_repo->path = trim_end(value, '/'); 195 cgit_repo->path = trim_end(value, '/');
@@ -386,16 +389,17 @@ void cgit_diff_tree(const unsigned char *old_sha1,
386 filepair_fn fn) 389 filepair_fn fn)
387{ 390{
388 struct diff_options opt; 391 struct diff_options opt;
389 int ret; 392 int ret;
390 393
391 diff_setup(&opt); 394 diff_setup(&opt);
392 opt.output_format = DIFF_FORMAT_CALLBACK; 395 opt.output_format = DIFF_FORMAT_CALLBACK;
393 opt.detect_rename = 1; 396 opt.detect_rename = 1;
397 opt.rename_limit = cgit_renamelimit;
394 opt.recursive = 1; 398 opt.recursive = 1;
395 opt.format_callback = cgit_diff_tree_cb; 399 opt.format_callback = cgit_diff_tree_cb;
396 opt.format_callback_data = fn; 400 opt.format_callback_data = fn;
397 diff_setup_done(&opt); 401 diff_setup_done(&opt);
398 402
399 if (old_sha1 && !is_null_sha1(old_sha1)) 403 if (old_sha1 && !is_null_sha1(old_sha1))
400 ret = diff_tree_sha1(old_sha1, new_sha1, "", &opt); 404 ret = diff_tree_sha1(old_sha1, new_sha1, "", &opt);
401 else 405 else