summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: eed1fcd)
raw | patch | inline | side by side (parent: eed1fcd)
author | Michael Hendricks <michael@ndrix.org> | |
Thu, 26 Mar 2009 16:51:05 +0000 (10:51 -0600) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Sat, 28 Mar 2009 06:49:50 +0000 (23:49 -0700) |
format-patch supports the format.headers configuration for adding
arbitrary email headers to the patches it outputs. This patch adds
support for an --add-header argument which makes the same feature
available from the command line. This is useful when the content of
custom email headers must change from branch to branch.
This patch has been sponsored by Grant Street Group
Signed-off-by: Michael Hendricks <michael@ndrix.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
arbitrary email headers to the patches it outputs. This patch adds
support for an --add-header argument which makes the same feature
available from the command line. This is useful when the content of
custom email headers must change from branch to branch.
This patch has been sponsored by Grant Street Group
Signed-off-by: Michael Hendricks <michael@ndrix.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-format-patch.txt | patch | blob | history | |
builtin-log.c | patch | blob | history | |
t/t4014-format-patch.sh | patch | blob | history |
index c2eb5fab4caff69b98fbcd3cb66d78e3371f81e4..51fd716902042314860a321ed582de57850c0ea7 100644 (file)
Add a "Cc:" header to the email headers. This is in addition
to any configured headers, and may be used multiple times.
+--add-header=<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 (file)
--- a/builtin-log.c
+++ b/builtin-log.c
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];
}
index f187d15e328aa43f3d7a7b9030158e0128cc4812..11061ddd5bd122a1e180509c018e1b8bea42ddc3 100755 (executable)
--- a/t/t4014-format-patch.sh
+++ b/t/t4014-format-patch.sh
grep "^ *S. E. Cipient <scipient@example.com>$" patch5
'
+test_expect_success 'command line headers' '
+
+ git config --unset-all format.headers &&
+ git format-patch --add-header="Cc: R. E. Cipient <rcipient@example.com>" --stdout master..side | sed -e "/^$/q" >patch6 &&
+ grep "^Cc: R. E. Cipient <rcipient@example.com>$" patch6
+'
+
+test_expect_success 'configuration headers and command line headers' '
+
+ git config --replace-all format.headers "Cc: R. E. Cipient <rcipient@example.com>" &&
+ git format-patch --add-header="Cc: S. E. Cipient <scipient@example.com>" --stdout master..side | sed -e "/^$/q" >patch7 &&
+ grep "^Cc: R. E. Cipient <rcipient@example.com>,$" patch7 &&
+ grep "^ *S. E. Cipient <scipient@example.com>$" patch7
+'
+
test_expect_success 'multiple files' '
rm -rf patches/ &&