threads / patch / 43162

patchmailinfo: hack to accept in-line annotations in patches.

Subject: [PATCH] mailinfo: hack to accept in-line annotations in patches.

## tl;dr

One message between Dec 12, 2006 and Dec 12, 2006. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Junio C Hamano· Dec 12, 2006, 01:15 UTC · lore

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@cox.net>
---
 * 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(-)
Show changes to builtin-mailinfo.c +5 −2
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

← back to recent threads