diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt index 021276329c..f4d7166275 100644 --- a/Documentation/git-send-email.txt +++ b/Documentation/git-send-email.txt @@ -68,11 +68,12 @@ This option may be specified multiple times. Invoke a text editor (see GIT_EDITOR in linkgit:git-var[1]) to edit an introductory message for the patch series. + -When `--compose` is used, git send-email will use the From, Subject, -Reply-To, and In-Reply-To headers specified in the message. If the body -of the message (what you type after the headers and a blank line) only -contains blank (or Git: prefixed) lines, the summary won't be sent, but -the headers mentioned above will be used unless they are removed. +When `--compose` is used, git send-email will use the From, To, Cc, Bcc, +Subject, Reply-To, and In-Reply-To headers specified in the message. If +the body of the message (what you type after the headers and a blank +line) only contains blank (or Git: prefixed) lines, the summary won't be +sent, but the headers mentioned above will be used unless they are +removed. + Missing From or In-Reply-To headers will be prompted for. + diff --git a/git-send-email.perl b/git-send-email.perl index 2adaa35938..526f2dd712 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -861,6 +861,9 @@ if ($compose) { my $tpl_subject = $initial_subject || ''; my $tpl_in_reply_to = $initial_in_reply_to || ''; my $tpl_reply_to = $reply_to || ''; + my $tpl_to = join(',', @initial_to); + my $tpl_cc = join(',', @initial_cc); + my $tpl_bcc = join(', ', @initial_bcc); print $c <"$1.tmp" && + sed "s/^To: .*/&, edited-to@example.com/" <"$1" >"$1.tmp" && echo this is the body >>"$1.tmp" && mv "$1.tmp" "$1" EOF @@ -2534,10 +2534,16 @@ test_expect_success $PREREQ '--compose handles to headers' ' --to=nobody@example.com \ --smtp-server="$(pwd)/fake.sendmail" \ HEAD^ && - # Ideally the "to" header we specified would be used, - # but the program explicitly warns that these are - # ignored. For now, just make sure we did not abort. - grep "To:" msgtxt1 + # Check both that the cover letter used our modified "to" line, + # but also that it was picked up for the patch. + q_to_tab >expect <<-\EOF && + To: nobody@example.com, + Qedited-to@example.com + EOF + grep -A1 "^To:" msgtxt1 >msgtxt1.to && + test_cmp expect msgtxt1.to && + grep -A1 "^To:" msgtxt2 >msgtxt2.to && + test_cmp expect msgtxt2.to ' test_done