diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt index c2eb5fab4caff69b98fbcd3cb66d78e3371f81e4..51fd716902042314860a321ed582de57850c0ea7 100644 --- a/Documentation/git-format-patch.txt +++ b/Documentation/git-format-patch.txt @@ -161,6 +161,11 @@ if that is not set. Add a "Cc:" header to the email headers. This is in addition to any configured headers, and may be used multiple times. +--add-header=
:: + Add an arbitrary header to the email headers. This is in addition + to any configured headers, and may be used multiple times. + For example, --add-header="Organization: git-foo" + --cover-letter:: In addition to the patches, generate a cover letter file containing the shortlog and the overall diffstat. You can diff --git a/builtin-log.c b/builtin-log.c index c7a57725948553a955f49ab891aed3fbdd3aa33d..27bc0dce23d364bd763b7ca92316eef5966c5908 100644 --- a/builtin-log.c +++ b/builtin-log.c @@ -918,6 +918,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) cover_letter = 1; else if (!strcmp(argv[i], "--no-binary")) no_binary_diff = 1; + else if (!prefixcmp(argv[i], "--add-header=")) + add_header(argv[i] + 13); else argv[j++] = argv[i]; } diff --git a/t/t4014-format-patch.sh b/t/t4014-format-patch.sh index f187d15e328aa43f3d7a7b9030158e0128cc4812..11061ddd5bd122a1e180509c018e1b8bea42ddc3 100755 --- a/t/t4014-format-patch.sh +++ b/t/t4014-format-patch.sh @@ -128,6 +128,21 @@ test_expect_success 'additional command line cc' ' grep "^ *S. E. Cipient $" patch5 ' +test_expect_success 'command line headers' ' + + git config --unset-all format.headers && + git format-patch --add-header="Cc: R. E. Cipient " --stdout master..side | sed -e "/^$/q" >patch6 && + grep "^Cc: R. E. Cipient $" patch6 +' + +test_expect_success 'configuration headers and command line headers' ' + + git config --replace-all format.headers "Cc: R. E. Cipient " && + git format-patch --add-header="Cc: S. E. Cipient " --stdout master..side | sed -e "/^$/q" >patch7 && + grep "^Cc: R. E. Cipient ,$" patch7 && + grep "^ *S. E. Cipient $" patch7 +' + test_expect_success 'multiple files' ' rm -rf patches/ &&