Add support for 'remove-suffix' option
When this option is enabled, the '.git' suffix of repository directories found while processing the 'scan-path' option will be removed. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
This commit is contained in:
parent
3516502aa0
commit
2e4a941626
3
cgit.c
3
cgit.c
@ -205,6 +205,8 @@ void config_cb(const char *name, const char *value)
|
|||||||
ctx.cfg.agefile = xstrdup(value);
|
ctx.cfg.agefile = xstrdup(value);
|
||||||
else if (!strcmp(name, "renamelimit"))
|
else if (!strcmp(name, "renamelimit"))
|
||||||
ctx.cfg.renamelimit = atoi(value);
|
ctx.cfg.renamelimit = atoi(value);
|
||||||
|
else if (!strcmp(name, "remove-suffix"))
|
||||||
|
ctx.cfg.remove_suffix = atoi(value);
|
||||||
else if (!strcmp(name, "robots"))
|
else if (!strcmp(name, "robots"))
|
||||||
ctx.cfg.robots = xstrdup(value);
|
ctx.cfg.robots = xstrdup(value);
|
||||||
else if (!strcmp(name, "clone-prefix"))
|
else if (!strcmp(name, "clone-prefix"))
|
||||||
@ -302,6 +304,7 @@ static void prepare_context(struct cgit_context *ctx)
|
|||||||
ctx->cfg.module_link = "./?repo=%s&page=commit&id=%s";
|
ctx->cfg.module_link = "./?repo=%s&page=commit&id=%s";
|
||||||
ctx->cfg.project_list = NULL;
|
ctx->cfg.project_list = NULL;
|
||||||
ctx->cfg.renamelimit = -1;
|
ctx->cfg.renamelimit = -1;
|
||||||
|
ctx->cfg.remove_suffix = 0;
|
||||||
ctx->cfg.robots = "index, nofollow";
|
ctx->cfg.robots = "index, nofollow";
|
||||||
ctx->cfg.root_title = "Git repository browser";
|
ctx->cfg.root_title = "Git repository browser";
|
||||||
ctx->cfg.root_desc = "a fast webinterface for the git dscm";
|
ctx->cfg.root_desc = "a fast webinterface for the git dscm";
|
||||||
|
1
cgit.h
1
cgit.h
@ -202,6 +202,7 @@ struct cgit_config {
|
|||||||
int noplainemail;
|
int noplainemail;
|
||||||
int noheader;
|
int noheader;
|
||||||
int renamelimit;
|
int renamelimit;
|
||||||
|
int remove_suffix;
|
||||||
int snapshots;
|
int snapshots;
|
||||||
int summary_branches;
|
int summary_branches;
|
||||||
int summary_log;
|
int summary_log;
|
||||||
|
@ -229,6 +229,11 @@ project-list::
|
|||||||
should loaded as git repositories. This must be defined prior to
|
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.
|
||||||
|
|
||||||
|
remove-suffix::
|
||||||
|
If set to "1" and scan-path is enabled, if any repositories are found
|
||||||
|
with a suffix of ".git", this suffix will be removed for the url and
|
||||||
|
name. Default value: "0". See also: scan-path.
|
||||||
|
|
||||||
renamelimit::
|
renamelimit::
|
||||||
Maximum number of files to consider when detecting renames. The value
|
Maximum number of files to consider when detecting renames. The value
|
||||||
"-1" uses the compiletime value in git (for further info, look at
|
"-1" uses the compiletime value in git (for further info, look at
|
||||||
@ -538,3 +543,4 @@ will generate the following html element:
|
|||||||
AUTHOR
|
AUTHOR
|
||||||
------
|
------
|
||||||
Lars Hjemli <hjemli@gmail.com>
|
Lars Hjemli <hjemli@gmail.com>
|
||||||
|
Jason A. Donenfeld <Jason@zx2c4.com>
|
||||||
|
@ -81,6 +81,9 @@ static void add_repo(const char *base, const char *path, repo_config_fn fn)
|
|||||||
p[strlen(p) - 5] = '\0';
|
p[strlen(p) - 5] = '\0';
|
||||||
|
|
||||||
repo = cgit_add_repo(xstrdup(p));
|
repo = cgit_add_repo(xstrdup(p));
|
||||||
|
if (ctx.cfg.remove_suffix)
|
||||||
|
if ((p = strrchr(repo->url, '.')) && !strcmp(p, ".git"))
|
||||||
|
*p = '\0';
|
||||||
repo->name = repo->url;
|
repo->name = repo->url;
|
||||||
repo->path = xstrdup(path);
|
repo->path = xstrdup(path);
|
||||||
p = (pwd && pwd->pw_gecos) ? strchr(pwd->pw_gecos, ',') : NULL;
|
p = (pwd && pwd->pw_gecos) ? strchr(pwd->pw_gecos, ',') : NULL;
|
||||||
|
Loading…
Reference in New Issue
Block a user