Code

gitweb: add patches view
authorGiuseppe Bilotta <giuseppe.bilotta@gmail.com>
Thu, 18 Dec 2008 07:13:18 +0000 (08:13 +0100)
committerJunio C Hamano <gitster@pobox.com>
Sun, 21 Dec 2008 09:11:31 +0000 (01:11 -0800)
The only difference between patch and patches view is in the treatement
of single commits: the former only displays a single patch, whereas the
latter displays a patchset leading to the specified commit.

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
gitweb/gitweb.perl

index 63e93a2736d30a714854deae42763a10531d9ba2..4b28136ba7dc2c46779c79879b6181fba13a03cc 100755 (executable)
@@ -529,6 +529,7 @@ our %actions = (
        "history" => \&git_history,
        "log" => \&git_log,
        "patch" => \&git_patch,
+       "patches" => \&git_patches,
        "rss" => \&git_rss,
        "atom" => \&git_atom,
        "search" => \&git_search,
@@ -5529,7 +5530,15 @@ sub git_commitdiff {
                        }
                        push @commit_spec, '-n', "$hash_parent..$hash";
                } else {
-                       push @commit_spec, '-1', '--root', $hash;
+                       if ($params{-single}) {
+                               push @commit_spec, '-1';
+                       } else {
+                               if ($patch_max > 0) {
+                                       push @commit_spec, "-$patch_max";
+                               }
+                               push @commit_spec, "-n";
+                       }
+                       push @commit_spec, '--root', $hash;
                }
                open $fd, "-|", git_cmd(), "format-patch", '--encoding=utf8',
                        '--stdout', @commit_spec
@@ -5625,6 +5634,10 @@ sub git_commitdiff_plain {
 
 # format-patch-style patches
 sub git_patch {
+       git_commitdiff(-format => 'patch', -single=> 1);
+}
+
+sub git_patches {
        git_commitdiff(-format => 'patch');
 }