Long before git-apply, when I wanted to talk about rationale of individual changes, I used to add annotation between hunks (delimited @@ -n,m, +l,k @@) as unindented plain text and rely on GNU patch to discard them as garbage. Because git-apply is much less forgiving than GNU patch, this is not possible. This patch teaches mailinfo that lines that begin with a '|' would never appear in the patch text and can be discarded safely. Which means that we can generate a patch as usual using format-patch, and add annotations inline, prefixed with '|'. Signed-off-by: Junio C Hamano <junkio@xxxxxxx> --- * I am not seriously suggesting this for inclusion but people might find this handy -- see the first edition of my git-commit documentation patch for an example (although I seem to have botched the hand-munge of that message). builtin-mailinfo.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c index b8d7dbc..7819be1 100644 --- a/builtin-mailinfo.c +++ b/builtin-mailinfo.c @@ -710,8 +710,11 @@ static void handle_patch(void) * here; we are dealing with the user payload. */ decode_transfer_encoding(line); - fputs(line, patchfile); - patch_lines++; + + if (line[0] != '|') { + fputs(line, patchfile); + patch_lines++; + } } while (fgets(line, sizeof(line), fin) != NULL); } -- 1.4.4.2.g7d2d-dirty - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html