@git_base_url_list hardcodes URLs in the form "$git_base_url/$project", which makes impossible to generate proper URLs for SSH access scenarios. This patch implements a more flexible replacement scheme, using a simple placeholder for the project path, and fixes the associated documentation. Signed-off-by: Damien Tournoud <damien@xxxxxxxxxxxx> --- gitweb/README | 13 ++++++------- gitweb/gitweb.perl | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/gitweb/README b/gitweb/README index ad6a04c..f16729c 100644 --- a/gitweb/README +++ b/gitweb/README @@ -197,13 +197,12 @@ not include variables usually directly set during build): full description is available as 'title' attribute (usually shown on mouseover). By default set to 25, which might be too small if you use long project descriptions. - * @git_base_url_list - List of git base URLs used for URL to where fetch project from, shown - in project summary page. Full URL is "$git_base_url/$project". - You can setup multiple base URLs (for example one for git:// protocol - access, and one for http:// "dumb" protocol access). Note that per - repository configuration in 'cloneurl' file, or as values of gitweb.url - project config. + * @git_base_url_patterns + List of git base URLs patterns used to build the URLs displayed in the + project summary page. Examples include "git://git.example.com/%project", + "http://git.example.com/%project" and "git@xxxxxxxxxxxxxxx:%project". + Note that per repository configuration in a 'cloneurl' file, or configuration + values of gitweb.url in the project config take precedence over this. * $default_blob_plain_mimetype Default mimetype for blob_plain (raw) view, if mimetype checking doesn't result in some other type; by default 'text/plain'. diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index c356e95..0fc5957 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -4904,7 +4904,7 @@ sub git_summary { # or make project git URL from git base URL and project name my $url_tag = "URL"; my @url_list = git_get_project_url_list($project); - @url_list = map { "$_/$project" } @git_base_url_list unless @url_list; + @url_list = map { my $url = $_; $url =~ s/%project/$project/g; $url } @git_base_url_list unless @url_list; foreach my $git_url (@url_list) { next unless $git_url; print "<tr class=\"metadata_url\"><td>$url_tag</td><td>$git_url</td></tr>\n"; -- 1.6.5.7 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html