http://gitweb.freedesktop.org/?p=PolicyKit.git;a=summary
This shows it in the URL part of each project.
-aneesh
threads / discuss / 5281
Subject: A better way to inform about git clone url. [2de21fac9842650fceb3db68f15711e38fabc3c8]
http://gitweb.freedesktop.org/?p=PolicyKit.git;a=summary
This shows it in the URL part of each project.
-aneesh
[PATCH] gitweb: Add support for cloneurl.
Aneesh Kumar K.V wrote:
> http://gitweb.freedesktop.org/?p=PolicyKit.git;a=summary > > This shows it in the URL part of each project. > -aneesh
The below patch implements the same. I am not sure whether the approach is the right one. To see the results you can see
http://git.openssi.org/~kvaneesh/gitweb.cgi
-aneesh
>From 87503bfc92210ab6791f7a15eba72682d60f74ca Mon Sep 17 00:00:00 2001
Subject: [PATCH] gitweb: Add support for cloneurl.
A new file cloneurl is added below .git directory for each project. The contents of the file is displayed by gitweb as the url which need to be used for git clone.
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com> --- gitweb/gitweb.perl | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index b5b89de..869c53e 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -503,6 +503,16 @@ sub git_get_project_description { return $descr; } +sub git_get_project_cloneurl { + my $path = shift; + + open my $fd, "$projectroot/$path/cloneurl" or return undef; + my $descr = <$fd>; + close $fd; + chomp $descr; + return $descr; +} + sub git_get_projects_list { my @list; @@ -1655,6 +1665,7 @@ sub git_project_list { sub git_summary { my $descr = git_get_project_description($project) || "none"; my $head = git_get_head_hash($project); + my $cloneurl = git_get_project_cloneurl($project) || "none"; my %co = parse_commit($head); my %cd = parse_date($co{'committer_epoch'}, $co{'committer_tz'}); @@ -1669,6 +1680,7 @@ sub git_summary { "<tr><td>description</td><td>" . esc_html($descr) . "</td></tr>\n" . "<tr><td>owner</td><td>$owner</td></tr>\n" . "<tr><td>last change</td><td>$cd{'rfc2822'}</td></tr>\n" . + "<tr><td>URL</td><td>$cloneurl</td></tr>\n" . "</table>\n"; open my $fd, "-|", $GIT, "rev-list", "--max-count=17", git_get_head_hash($project)
-- 1.4.2.rc1.g83e1-dirty
Re: A better way to inform about git clone url. [2de21fac9842650fceb3db68f15711e38fabc3c8]
On Tue, 2006-08-15 at 01:27, Aneesh Kumar K.V wrote:
> http://gitweb.freedesktop.org/?p=PolicyKit.git;a=summary > > This shows it in the URL part of each project.
Oh yes. ++Vote.
jdl
[PATCH] gitweb: Support multiple clone urls
This one is on top of the last one
>From 135f502d7f47f58be5035f2cdb4896dd24adb852 Mon Sep 17 00:00:00 2001
gitweb: Support multiple clone urls
This shows multiple urls if available for git clone
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com> --- gitweb/gitweb.perl | 20 +++++++++++++------- 1 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 869c53e..501537f 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -505,12 +505,13 @@ sub git_get_project_description { sub git_get_project_cloneurl { my $path = shift; + my @cloneurls; open my $fd, "$projectroot/$path/cloneurl" or return undef; - my $descr = <$fd>; + @cloneurls = <$fd>; close $fd; - chomp $descr; - return $descr; + + return \@cloneurls; } sub git_get_projects_list { @@ -1665,7 +1666,7 @@ sub git_project_list { sub git_summary { my $descr = git_get_project_description($project) || "none"; my $head = git_get_head_hash($project); - my $cloneurl = git_get_project_cloneurl($project) || "none"; + my $cloneurls = git_get_project_cloneurl($project); my %co = parse_commit($head); my %cd = parse_date($co{'committer_epoch'}, $co{'committer_tz'}); @@ -1679,9 +1680,14 @@ sub git_summary { print "<table cellspacing=\"0\">\n" . "<tr><td>description</td><td>" . esc_html($descr) . "</td></tr>\n" . "<tr><td>owner</td><td>$owner</td></tr>\n" . - "<tr><td>last change</td><td>$cd{'rfc2822'}</td></tr>\n" . - "<tr><td>URL</td><td>$cloneurl</td></tr>\n" . - "</table>\n"; + "<tr><td>last change</td><td>$cd{'rfc2822'}</td></tr>\n"; + + my $url; + foreach $url (@$cloneurls) { + chomp $url; + print "<tr><td>URL</td><td>$url</td></tr>\n"; + } + print "</table>\n"; open my $fd, "-|", $GIT, "rev-list", "--max-count=17", git_get_head_hash($project) or die_error(undef, "Open git-rev-list failed");
-- 1.4.2.rc1.g83e1-dirty