Quoting Nicolas Sebrecht [off-list ref]:
We traditionally allowed a mbox file or a directory name of a maildir to be
given to "git am". Even though an individual file in a maildir (or more
generally, a piece of RFC2822 e-mail) is not a mbox file, it contains enough
information to create a commit out of it, so there is no reason to reject one.
It allows to run 'git am' with an email list argument, something like:
$ git am dir/*
$ git am email1 email2
This builds on top of a5a6755 (git-am foreign patch support: introduce
patch_format, 2009-05-27) that introduced mailbox format detection. The
codepath to deal with a mbox requires it to begin with "From " line and
also allows it to begin with "From: ", but a random piece of e-mail can
and often do begin with any valid RFC2822 header lines.
Instead of checking the first line, we extract all the lines up to the
first empty line, and make sure they look like e-mail headers.
Signed-off-by: Nicolas Sebrecht <redacted>
---
Could you summarize the changes since v5 here? Is the change the same as Junio's patch (if so shouldn't you credit him in the commit log message)?
quoted hunk ↗ jump to hunk
Documentation/git-am.txt | 6 ++--
git-am.sh | 14 ++++++++++++
t/t4150-am.sh | 54 ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 71 insertions(+), 3 deletions(-)
diff --git a/Documentation/git-am.txt b/Documentation/git-am.txt
index 32e689b..2a930a7 100644
--- a/Documentation/git-am.txt
+++ b/Documentation/git-am.txt
@@ -14,7 +14,7 @@ SYNOPSIS
[--ignore-date]
[--whitespace=<option>] [-C<n>] [-p<n>] [--directory=<dir>]
[--reject] [-q | --quiet]
- [<mbox> | <Maildir>...]
+ [<mbox> | <Maildir>... | <email>... ]
'git am' (--skip | --resolved | --abort)
DESCRIPTION
@@ -25,8 +25,8 @@ current branch.
OPTIONS
-------
-<mbox>|<Maildir>...::
- The list of mailbox files to read patches from. If you do not
+<mbox>|<Maildir>...|<email>...::
+ The list of mailbox files or email to read patches from. If you do not
supply this argument, the command reads from the standard input.
If you supply directories, they will be treated as Maildirs.
I wasn't following the discussion closely, and at first I didn't understand this change to the documentation, because it doesn't say how <mbox> and <email> are different. I'm afraid many readers of the documentation don't understand it either.
Why does this description have ... in it? If I'm reading it correctly, the code in check_patch_format function checks only the first file.
--
Nanako Shiraishi
http://ivory.ap.teacup.com/nanako3/