git-mailinfo(1)
===============

NAME
----
git-mailinfo - Extracts patch from a single e-mail message.


SYNOPSIS
--------
'git-mailinfo' [-k] [-u | --encoding=<encoding>] <msg> <patch>


DESCRIPTION
-----------
Reading a single e-mail message from the standard input, and
writes the commit log message in <msg> file, and the patches in
<patch> file.  The author name, e-mail and e-mail subject are
written out to the standard output to be used by git-applypatch
to create a commit.  It is usually not necessary to use this
command directly.


OPTIONS
-------
-k::
	Usually the program 'cleans up' the Subject: header line
	to extract the title line for the commit log message,
	among which (1) remove 'Re:' or 're:', (2) leading
	whitespaces, (3) '[' up to ']', typically '[PATCH]', and
	then prepends "[PATCH] ".  This flag forbids this
	munging, and is most useful when used to read back 'git
	format-patch --mbox' output.

-u::
	By default, the commit log message, author name and
	author email are taken from the e-mail without any
	charset conversion, after minimally decoding MIME
	transfer encoding.  This flag causes the resulting
	commit to be encoded in the encoding specified by
	i18n.commitencoding configuration (defaults to utf-8) by
	transliterating them. 
	Note that the patch is always used as is without charset
	conversion, even with this flag.

--encoding=<encoding>::
	Similar to -u but if the local convention is different
	from what is specified by i18n.commitencoding, this flag
	can be used to override it.

<msg>::
	The commit log message extracted from e-mail, usually
	except the title line which comes from e-mail Subject.

<patch>::
	The patch extracted from e-mail.


Author
------
Written by Linus Torvalds <torvalds@osdl.org> and
Junio C Hamano <junkio@cox.net>


Documentation
--------------
Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT
---
Part of the gitlink:git[7] suite

