diff options
author | Junio C Hamano <gitster@pobox.com> | 2007-09-01 13:15:27 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-09-01 13:15:27 -0700 |
commit | 4e837a98b65fbe0c83376cae5167605b771421d8 (patch) | |
tree | 6a7526e919a30ee7b8a96f0dd5c88728452b364e /git-send-email.perl | |
parent | a94eda65d37149e81356b6a263ce03015d3f5d73 (diff) | |
parent | 324a8bd0cfb696458bc651d3713d7523fd0d7479 (diff) | |
download | git-4e837a98b65fbe0c83376cae5167605b771421d8.tar.gz |
Merge branch 'jp/send-email-cc'
* jp/send-email-cc:
git-send-email --cc-cmd
Diffstat (limited to 'git-send-email.perl')
-rwxr-xr-x | git-send-email.perl | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/git-send-email.perl b/git-send-email.perl index f1a8855682..e0b7d1245e 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -49,6 +49,9 @@ Options: --cc Specify an initial "Cc:" list for the entire series of emails. + --cc-cmd Specify a command to execute per file which adds + per file specific cc address entries + --bcc Specify a list of email addresses that should be Bcc: on all the emails. @@ -160,13 +163,14 @@ if ($@) { my ($quiet, $dry_run) = (0, 0); # Variables with corresponding config settings -my ($thread, $chain_reply_to, $suppress_from, $signed_off_cc); +my ($thread, $chain_reply_to, $suppress_from, $signed_off_cc, $cc_cmd); my %config_settings = ( "thread" => [\$thread, 1], "chainreplyto" => [\$chain_reply_to, 1], "suppressfrom" => [\$suppress_from, 0], "signedoffcc" => [\$signed_off_cc, 1], + "cccmd" => [\$cc_cmd, ""], ); foreach my $setting (keys %config_settings) { @@ -192,6 +196,7 @@ my $rc = GetOptions("sender|from=s" => \$sender, "smtp-server=s" => \$smtp_server, "compose" => \$compose, "quiet" => \$quiet, + "cc-cmd=s" => \$cc_cmd, "suppress-from!" => \$suppress_from, "signed-off-cc|signed-off-by-cc!" => \$signed_off_cc, "dry-run" => \$dry_run, @@ -655,11 +660,26 @@ foreach my $t (@files) { } } close F; + + if ($cc_cmd ne "") { + open(F, "$cc_cmd $t |") + or die "(cc-cmd) Could not execute '$cc_cmd'"; + while(<F>) { + my $c = $_; + $c =~ s/^\s*//g; + $c =~ s/\n$//g; + push @cc, $c; + printf("(cc-cmd) Adding cc: %s from: '%s'\n", + $c, $cc_cmd) unless $quiet; + } + close F + or die "(cc-cmd) failed to close pipe to '$cc_cmd'"; + } + if (defined $author) { $message = "From: $author\n\n$message"; } - send_message(); # set up for the next message |