Accept multiple patch files rather than only one. For example:

  % git contacts feature/*.patch

Signed-off-by: Eric Sunshine <sunsh...@sunshineco.com>
---
 contrib/contacts/git-contacts | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/contrib/contacts/git-contacts b/contrib/contacts/git-contacts
index 9007bae..ab11670 100755
--- a/contrib/contacts/git-contacts
+++ b/contrib/contacts/git-contacts
@@ -3,7 +3,7 @@
 # List people who might be interested in a patch.  Useful as the argument to
 # git-send-email --cc-cmd option, and in other situations.
 #
-# Usage: git contacts <file>
+# Usage: git contacts <file> ...
 
 use strict;
 use warnings;
@@ -13,6 +13,7 @@ my $since = '5-years-ago';
 my $min_percent = 10;
 my $labels_rx = qr/(?:Signed-off|Reviewed|Acked)-by/;
 my $id_rx = qr/[0-9a-f]{40}/i;
+my %seen;
 
 sub format_contact {
        my ($name, $email) = @_;
@@ -68,7 +69,9 @@ sub get_blame {
        while (<$f>) {
                if (/^$id_rx/o) {
                        my $id = $&;
-                       $commits->{$id} = { id => $id, contacts => {} };
+                       $commits->{$id} = { id => $id, contacts => {} }
+                               unless $seen{$id};
+                       $seen{$id} = 1;
                }
        }
        close $f;
@@ -93,6 +96,7 @@ sub commits_from_patch {
        while (<$f>) {
                if (/^From ($id_rx) /o) {
                        $id = $1;
+                       $seen{$id} = 1;
                        last;
                }
        }
@@ -100,10 +104,8 @@ sub commits_from_patch {
        close $f;
 }
 
-exit 1 unless @ARGV == 1;
-
 my %commits;
-commits_from_patch(\%commits, $ARGV[0]);
+commits_from_patch(\%commits, $_) for (@ARGV);
 import_commits(\%commits);
 
 my %count_per_person;
-- 
1.8.3.2

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to