Răsfoiți Sursa

git-notify: Make showing the committer optional

Only the author's name and address will now be mentioned in a commit
notification by default.  However, if the "-C" option is specified (or
"notify.showCommitter" is set), the committer's name and address will
also be included in the notification if the committer is not the author
of the commit (as we previously did by default).
Holger Weiss 16 ani în urmă
părinte
comite
0775c9fc10
1 a modificat fișierele cu 7 adăugiri și 1 ștergeri
  1. 7 1
      tools/git-notify

+ 7 - 1
tools/git-notify

@@ -15,6 +15,7 @@
 #
 #
 # Usage: git-notify [options] [--] old-sha1 new-sha1 refname
 # Usage: git-notify [options] [--] old-sha1 new-sha1 refname
 #
 #
+#   -C        Show committer in the body if different from the author
 #   -c name   Send CIA notifications under specified project name
 #   -c name   Send CIA notifications under specified project name
 #   -m addr   Send mail notifications to specified address
 #   -m addr   Send mail notifications to specified address
 #   -n max    Set max number of individual mails to send
 #   -n max    Set max number of individual mails to send
@@ -49,6 +50,9 @@ my $debug = 0;
 
 
 # configuration parameters
 # configuration parameters
 
 
+# show the committer if different from the author (can be set with the -C option)
+my $show_committer = git_config( "notify.showcommitter" );
+
 # base URL of the gitweb repository browser (can be set with the -u option)
 # base URL of the gitweb repository browser (can be set with the -u option)
 my $gitweb_url = git_config( "notify.baseurl" );
 my $gitweb_url = git_config( "notify.baseurl" );
 
 
@@ -85,6 +89,7 @@ my @revlist_options;
 sub usage()
 sub usage()
 {
 {
     print "Usage: $0 [options] [--] old-sha1 new-sha1 refname\n";
     print "Usage: $0 [options] [--] old-sha1 new-sha1 refname\n";
+    print "   -C        Show committer in the body if different from the author\n";
     print "   -c name   Send CIA notifications under specified project name\n";
     print "   -c name   Send CIA notifications under specified project name\n";
     print "   -m addr   Send mail notifications to specified address\n";
     print "   -m addr   Send mail notifications to specified address\n";
     print "   -n max    Set max number of individual mails to send\n";
     print "   -n max    Set max number of individual mails to send\n";
@@ -265,6 +270,7 @@ sub parse_options()
         my $arg = shift @ARGV;
         my $arg = shift @ARGV;
 
 
         if ($arg eq '--') { last; }
         if ($arg eq '--') { last; }
+        elsif ($arg eq '-C') { $show_committer = 1; }
         elsif ($arg eq '-c') { $cia_project_name = shift @ARGV; }
         elsif ($arg eq '-c') { $cia_project_name = shift @ARGV; }
         elsif ($arg eq '-m') { $commitlist_address = shift @ARGV; }
         elsif ($arg eq '-m') { $commitlist_address = shift @ARGV; }
         elsif ($arg eq '-n') { $max_individual_notices = shift @ARGV; }
         elsif ($arg eq '-n') { $max_individual_notices = shift @ARGV; }
@@ -432,7 +438,7 @@ sub send_commit_notice($$)
           "Branch: $ref",
           "Branch: $ref",
           "Commit: $obj",
           "Commit: $obj",
           "Author:" . $info{"author"},
           "Author:" . $info{"author"},
-          $info{"committer"} ne $info{"author"} ? "Committer:" . $info{"committer"} : undef,
+          $show_committer && $info{"committer"} ne $info{"author"} ? "Committer:" . $info{"committer"} : undef,
           "Date:" . format_date($info{"author_date"},$info{"author_tz"}),
           "Date:" . format_date($info{"author_date"},$info{"author_tz"}),
           $url ? "URL: $url" : undef),
           $url ? "URL: $url" : undef),
           "",
           "",