blob: 54c3f2dd5cba995158acbeaf267d52b03ec2b2a4 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="generator" content="AsciiDoc 7.0.2" />
<style type="text/css">
/* Debug borders */
p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
/*
border: 1px solid red;
*/
}
body {
margin: 1em 5% 1em 5%;
}
a { color: blue; }
a:visited { color: fuchsia; }
em {
font-style: italic;
}
strong {
font-weight: bold;
}
tt {
color: navy;
}
h1, h2, h3, h4, h5, h6 {
color: #527bbd;
font-family: sans-serif;
margin-top: 1.2em;
margin-bottom: 0.5em;
line-height: 1.3;
}
h1 {
border-bottom: 2px solid silver;
}
h2 {
border-bottom: 2px solid silver;
padding-top: 0.5em;
}
div.sectionbody {
font-family: serif;
margin-left: 0;
}
hr {
border: 1px solid silver;
}
p {
margin-top: 0.5em;
margin-bottom: 0.5em;
}
pre {
padding: 0;
margin: 0;
}
span#author {
color: #527bbd;
font-family: sans-serif;
font-weight: bold;
font-size: 1.2em;
}
span#email {
}
span#revision {
font-family: sans-serif;
}
div#footer {
font-family: sans-serif;
font-size: small;
border-top: 2px solid silver;
padding-top: 0.5em;
margin-top: 4.0em;
}
div#footer-text {
float: left;
padding-bottom: 0.5em;
}
div#footer-badges {
float: right;
padding-bottom: 0.5em;
}
div#preamble,
div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
div.admonitionblock {
margin-right: 10%;
margin-top: 1.5em;
margin-bottom: 1.5em;
}
div.admonitionblock {
margin-top: 2.5em;
margin-bottom: 2.5em;
}
div.content { /* Block element content. */
padding: 0;
}
/* Block element titles. */
div.title, caption.title {
font-family: sans-serif;
font-weight: bold;
text-align: left;
margin-top: 1.0em;
margin-bottom: 0.5em;
}
div.title + * {
margin-top: 0;
}
td div.title:first-child {
margin-top: 0.0em;
}
div.content div.title:first-child {
margin-top: 0.0em;
}
div.content + div.title {
margin-top: 0.0em;
}
div.sidebarblock > div.content {
background: #ffffee;
border: 1px solid silver;
padding: 0.5em;
}
div.listingblock > div.content {
border: 1px solid silver;
background: #f4f4f4;
padding: 0.5em;
}
div.quoteblock > div.content {
padding-left: 2.0em;
}
div.quoteblock .attribution {
text-align: right;
}
div.admonitionblock .icon {
vertical-align: top;
font-size: 1.1em;
font-weight: bold;
text-decoration: underline;
color: #527bbd;
padding-right: 0.5em;
}
div.admonitionblock td.content {
padding-left: 0.5em;
border-left: 2px solid silver;
}
div.exampleblock > div.content {
border-left: 2px solid silver;
padding: 0.5em;
}
div.verseblock div.content {
white-space: pre;
}
div.imageblock div.content { padding-left: 0; }
div.imageblock img { border: 1px solid silver; }
span.image img { border-style: none; }
dl {
margin-top: 0.8em;
margin-bottom: 0.8em;
}
dt {
margin-top: 0.5em;
margin-bottom: 0;
font-style: italic;
}
dd > *:first-child {
margin-top: 0;
}
ul, ol {
list-style-position: outside;
}
ol.olist2 {
list-style-type: lower-alpha;
}
div.tableblock > table {
border-color: #527bbd;
border-width: 3px;
}
thead {
font-family: sans-serif;
font-weight: bold;
}
tfoot {
font-weight: bold;
}
div.hlist {
margin-top: 0.8em;
margin-bottom: 0.8em;
}
td.hlist1 {
vertical-align: top;
font-style: italic;
padding-right: 0.8em;
}
td.hlist2 {
vertical-align: top;
}
@media print {
div#footer-badges { display: none; }
}
include::./stylesheets/xhtml11-manpage.css[]
/* Workarounds for IE6's broken and incomplete CSS2. */
div.sidebar-content {
background: #ffffee;
border: 1px solid silver;
padding: 0.5em;
}
div.sidebar-title, div.image-title {
font-family: sans-serif;
font-weight: bold;
margin-top: 0.0em;
margin-bottom: 0.5em;
}
div.listingblock div.content {
border: 1px solid silver;
background: #f4f4f4;
padding: 0.5em;
}
div.quoteblock-content {
padding-left: 2.0em;
}
div.exampleblock-content {
border-left: 2px solid silver;
padding-left: 0.5em;
}
</style>
<title>git-format-patch(1)</title>
</head>
<body>
<div id="header">
<h1>
git-format-patch(1) Manual Page
</h1>
<h2>NAME</h2>
<div class="sectionbody">
<p>git-format-patch -
Prepare patches for e-mail submission.
</p>
</div>
</div>
<h2>SYNOPSIS</h2>
<div class="sectionbody">
<div class="verseblock">
<div class="content"><em>git-format-patch</em> [-n | -k] [-o &lt;dir&gt; | --stdout] [-s] [-c]
[--diff-options] &lt;his&gt; [&lt;mine&gt;]</div></div>
</div>
<h2>DESCRIPTION</h2>
<div class="sectionbody">
<p>Prepare each commit with its patch since &lt;mine&gt; head forked from
&lt;his&gt; head, one file per patch formatted to resemble UNIX mailbox
format, for e-mail submission or use with <a href="git-am.html">git-am(1)</a>.</p>
<p>Each output file is numbered sequentially from 1, and uses the
first line of the commit message (massaged for pathname safety)
as the filename.</p>
<p>When -o is specified, output files are created in &lt;dir&gt;; otherwise
they are created in the current working directory. This option
is ignored if --stdout is specified.</p>
<p>When -n is specified, instead of "[PATCH] Subject", the first
line is formatted as "[PATCH N/M] Subject", unless you have only
one patch.</p>
</div>
<h2>OPTIONS</h2>
<div class="sectionbody">
<dl>
<dt>
-o|--output-directory &lt;dir&gt;
</dt>
<dd>
<p>
Use &lt;dir&gt; to store the resulting files, instead of the
current working directory.
</p>
</dd>
<dt>
-n|--numbered
</dt>
<dd>
<p>
Name output in <em>[PATCH n/m]</em> format.
</p>
</dd>
<dt>
-k|--keep-subject
</dt>
<dd>
<p>
Do not strip/add <em>[PATCH]</em> from the first line of the
commit log message.
</p>
</dd>
<dt>
-s|--signoff
</dt>
<dd>
<p>
Add <tt>Signed-off-by:</tt> line to the commit message, using
the committer identity of yourself.
</p>
</dd>
<dt>
-c|--check
</dt>
<dd>
<p>
Display suspicious lines in the patch. The definition
of <em>suspicious lines</em> is currently the lines that has
trailing whitespaces, and the lines whose indentation
has a SP character immediately followed by a TAB
character.
</p>
</dd>
<dt>
--stdout
</dt>
<dd>
<p>
This flag generates the mbox formatted output to the
standard output, instead of saving them into a file per
patch and implies --mbox.
</p>
</dd>
</dl>
</div>
<h2>EXAMPLES</h2>
<div class="sectionbody">
<dl>
<dt>
git-format-patch -k --stdout R1..R2 | git-am -3 -k
</dt>
<dd>
<p>
Extract commits between revisions R1 and R2, and apply
them on top of the current branch using <tt>git-am</tt> to
cherry-pick them.
</p>
</dd>
<dt>
git-format-patch origin
</dt>
<dd>
<p>
Extract commits the current branch accumulated since it
pulled from origin the last time in a patch form for
e-mail submission.
</p>
</dd>
<dt>
git-format-patch -M -B origin
</dt>
<dd>
<p>
The same as the previous one, except detect and handle
renames and complete rewrites intelligently to produce
renaming patch. A renaming patch reduces the amount of
text output, and generally makes it easier to review
it. Note that the "patch" program does not understand
renaming patch well, so use it only when you know the
recipient uses git to apply your patch.
</p>
</dd>
</dl>
</div>
<h2>See Also</h2>
<div class="sectionbody">
<p><a href="git-am.html">git-am(1)</a>, <a href="git-send-email.html">git-send-email(1)</a></p>
</div>
<h2>Author</h2>
<div class="sectionbody">
<p>Written by Junio C Hamano &lt;junkio@cox.net&gt;</p>
</div>
<h2>Documentation</h2>
<div class="sectionbody">
<p>Documentation by Junio C Hamano and the git-list &lt;git@vger.kernel.org&gt;.</p>
</div>
<h2>GIT</h2>
<div class="sectionbody">
<p>Part of the <a href="git.html">git(7)</a> suite</p>
</div>
<div id="footer">
<div id="footer-text">
Last updated 07-Feb-2006 10:24:33 UTC
</div>
</div>
</body>
</html>