-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
am/mailinfo: Disable scissors processing by default
You can enable it by giving --scissors to "git am". Signed-off-by: Junio C Hamano <gitster@pobox.com>
- Loading branch information
Junio C Hamano
committed
Aug 27, 2009
1 parent
f43c97f
commit 017678b
Showing
10 changed files
with
149 additions
and
29 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
Author: Junio C Hamano | ||
Email: gitster@pobox.com | ||
Subject: Teach mailinfo to ignore everything before -- >8 -- mark | ||
Author: Junio Hamano | ||
Email: junkio@cox.net | ||
Subject: BLAH ONE | ||
Date: Thu, 20 Aug 2009 17:18:22 -0700 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
Author: Junio C Hamano | ||
Email: gitster@pobox.com | ||
Subject: Teach mailinfo to ignore everything before -- >8 -- mark | ||
Date: Thu, 20 Aug 2009 17:18:22 -0700 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
This teaches mailinfo the scissors -- >8 -- mark; the command ignores | ||
everything before it in the message body. | ||
|
||
Signed-off-by: Junio C Hamano <gitster@pobox.com> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
--- | ||
builtin-mailinfo.c | 37 ++++++++++++++++++++++++++++++++++++- | ||
1 files changed, 36 insertions(+), 1 deletions(-) | ||
|
||
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c | ||
index b0b5d8f..461c47e 100644 | ||
--- a/builtin-mailinfo.c | ||
+++ b/builtin-mailinfo.c | ||
@@ -712,6 +712,34 @@ static inline int patchbreak(const struct strbuf *line) | ||
return 0; | ||
} | ||
|
||
+static int scissors(const struct strbuf *line) | ||
+{ | ||
+ size_t i, len = line->len; | ||
+ int scissors_dashes_seen = 0; | ||
+ const char *buf = line->buf; | ||
+ | ||
+ for (i = 0; i < len; i++) { | ||
+ if (isspace(buf[i])) | ||
+ continue; | ||
+ if (buf[i] == '-') { | ||
+ scissors_dashes_seen |= 02; | ||
+ continue; | ||
+ } | ||
+ if (i + 1 < len && !memcmp(buf + i, ">8", 2)) { | ||
+ scissors_dashes_seen |= 01; | ||
+ i++; | ||
+ continue; | ||
+ } | ||
+ if (i + 7 < len && !memcmp(buf + i, "cut here", 8)) { | ||
+ i += 7; | ||
+ continue; | ||
+ } | ||
+ /* everything else --- not scissors */ | ||
+ break; | ||
+ } | ||
+ return scissors_dashes_seen == 03; | ||
+} | ||
+ | ||
static int handle_commit_msg(struct strbuf *line) | ||
{ | ||
static int still_looking = 1; | ||
@@ -723,10 +751,17 @@ static int handle_commit_msg(struct strbuf *line) | ||
strbuf_ltrim(line); | ||
if (!line->len) | ||
return 0; | ||
- if ((still_looking = check_header(line, s_hdr_data, 0)) != 0) | ||
+ still_looking = check_header(line, s_hdr_data, 0); | ||
+ if (still_looking) | ||
return 0; | ||
} | ||
|
||
+ if (scissors(line)) { | ||
+ fseek(cmitmsg, 0L, SEEK_SET); | ||
+ still_looking = 1; | ||
+ return 0; | ||
+ } | ||
+ | ||
/* normalize the log message to UTF-8. */ | ||
if (metainfo_charset) | ||
convert_to_utf8(line, charset.buf); | ||
-- | ||
1.6.4.1 |