<!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-apply(1)</title> | |
</head> | |
<body> | |
<div id="header"> | |
<h1> | |
git-apply(1) Manual Page | |
</h1> | |
<h2>NAME</h2> | |
<div class="sectionbody"> | |
<p>git-apply - | |
Apply a patch on a git index file and a working tree | |
</p> | |
</div> | |
</div> | |
<h2>SYNOPSIS</h2> | |
<div class="sectionbody"> | |
<div class="verseblock"> | |
<div class="content"><em>git-apply</em> [--stat] [--numstat] [--summary] [--check] [--index] | |
[--apply] [--no-add] [--build-fake-ancestor <file>] [-R | --reverse] | |
[--allow-binary-replacement | --binary] [--reject] [-z] | |
[-pNUM] [-CNUM] [--inaccurate-eof] [--cached] | |
[--whitespace=<nowarn|warn|fix|error|error-all>] | |
[--exclude=PATH] [--verbose] [<patch>…]</div></div> | |
</div> | |
<h2>DESCRIPTION</h2> | |
<div class="sectionbody"> | |
<p>Reads supplied diff output and applies it on a git index file | |
and a work tree.</p> | |
</div> | |
<h2>OPTIONS</h2> | |
<div class="sectionbody"> | |
<dl> | |
<dt> | |
<patch>… | |
</dt> | |
<dd> | |
<p> | |
The files to read patch from. <em>-</em> can be used to read | |
from the standard input. | |
</p> | |
</dd> | |
<dt> | |
--stat | |
</dt> | |
<dd> | |
<p> | |
Instead of applying the patch, output diffstat for the | |
input. Turns off "apply". | |
</p> | |
</dd> | |
<dt> | |
--numstat | |
</dt> | |
<dd> | |
<p> | |
Similar to --stat, but shows number of added and | |
deleted lines in decimal notation and pathname without | |
abbreviation, to make it more machine friendly. For | |
binary files, outputs two <tt>-</tt> instead of saying | |
<tt>0 0</tt>. Turns off "apply". | |
</p> | |
</dd> | |
<dt> | |
--summary | |
</dt> | |
<dd> | |
<p> | |
Instead of applying the patch, output a condensed | |
summary of information obtained from git diff extended | |
headers, such as creations, renames and mode changes. | |
Turns off "apply". | |
</p> | |
</dd> | |
<dt> | |
--check | |
</dt> | |
<dd> | |
<p> | |
Instead of applying the patch, see if the patch is | |
applicable to the current work tree and/or the index | |
file and detects errors. Turns off "apply". | |
</p> | |
</dd> | |
<dt> | |
--index | |
</dt> | |
<dd> | |
<p> | |
When --check is in effect, or when applying the patch | |
(which is the default when none of the options that | |
disables it is in effect), make sure the patch is | |
applicable to what the current index file records. If | |
the file to be patched in the work tree is not | |
up-to-date, it is flagged as an error. This flag also | |
causes the index file to be updated. | |
</p> | |
</dd> | |
<dt> | |
--cached | |
</dt> | |
<dd> | |
<p> | |
Apply a patch without touching the working tree. Instead, take the | |
cached data, apply the patch, and store the result in the index, | |
without using the working tree. This implies <em>--index</em>. | |
</p> | |
</dd> | |
<dt> | |
--build-fake-ancestor <file> | |
</dt> | |
<dd> | |
<p> | |
Newer git-diff output has embedded <em>index information</em> | |
for each blob to help identify the original version that | |
the patch applies to. When this flag is given, and if | |
the original versions of the blobs is available locally, | |
builds a temporary index containing those blobs. | |
</p> | |
<p>When a pure mode change is encountered (which has no index information), | |
the information is read from the current index instead.</p> | |
</dd> | |
<dt> | |
-R | |
</dt> | |
<dt> | |
--reverse | |
</dt> | |
<dd> | |
<p> | |
Apply the patch in reverse. | |
</p> | |
</dd> | |
<dt> | |
--reject | |
</dt> | |
<dd> | |
<p> | |
For atomicity, <a href="git-apply.html">git-apply(1)</a> by default fails the whole patch and | |
does not touch the working tree when some of the hunks | |
do not apply. This option makes it apply | |
the parts of the patch that are applicable, and leave the | |
rejected hunks in corresponding *.rej files. | |
</p> | |
</dd> | |
<dt> | |
-z | |
</dt> | |
<dd> | |
<p> | |
When showing the index information, do not munge paths, | |
but use NUL terminated machine readable format. Without | |
this flag, the pathnames output will have TAB, LF, and | |
backslash characters replaced with <tt>\t</tt>, <tt>\n</tt>, and <tt>\\</tt>, | |
respectively. | |
</p> | |
</dd> | |
<dt> | |
-p<n> | |
</dt> | |
<dd> | |
<p> | |
Remove <n> leading slashes from traditional diff paths. The | |
default is 1. | |
</p> | |
</dd> | |
<dt> | |
-C<n> | |
</dt> | |
<dd> | |
<p> | |
Ensure at least <n> lines of surrounding context match before | |
and after each change. When fewer lines of surrounding | |
context exist they all must match. By default no context is | |
ever ignored. | |
</p> | |
</dd> | |
<dt> | |
--unidiff-zero | |
</dt> | |
<dd> | |
<p> | |
By default, <a href="git-apply.html">git-apply(1)</a> expects that the patch being | |
applied is a unified diff with at least one line of context. | |
This provides good safety measures, but breaks down when | |
applying a diff generated with --unified=0. To bypass these | |
checks use <em>--unidiff-zero</em>. | |
</p> | |
<p>Note, for the reasons stated above usage of context-free patches are | |
discouraged.</p> | |
</dd> | |
<dt> | |
--apply | |
</dt> | |
<dd> | |
<p> | |
If you use any of the options marked "Turns off | |
<em>apply</em>" above, <a href="git-apply.html">git-apply(1)</a> reads and outputs the | |
information you asked without actually applying the | |
patch. Give this flag after those flags to also apply | |
the patch. | |
</p> | |
</dd> | |
<dt> | |
--no-add | |
</dt> | |
<dd> | |
<p> | |
When applying a patch, ignore additions made by the | |
patch. This can be used to extract the common part between | |
two files by first running <tt>diff</tt> on them and applying | |
the result with this option, which would apply the | |
deletion part but not addition part. | |
</p> | |
</dd> | |
<dt> | |
--allow-binary-replacement | |
</dt> | |
<dt> | |
--binary | |
</dt> | |
<dd> | |
<p> | |
Historically we did not allow binary patch applied | |
without an explicit permission from the user, and this | |
flag was the way to do so. Currently we always allow binary | |
patch application, so this is a no-op. | |
</p> | |
</dd> | |
<dt> | |
--exclude=<path-pattern> | |
</dt> | |
<dd> | |
<p> | |
Don't apply changes to files matching the given path pattern. This can | |
be useful when importing patchsets, where you want to exclude certain | |
files or directories. | |
</p> | |
</dd> | |
<dt> | |
--whitespace=<action> | |
</dt> | |
<dd> | |
<p> | |
When applying a patch, detect a new or modified line that has | |
whitespace errors. What are considered whitespace errors is | |
controlled by <tt>core.whitespace</tt> configuration. By default, | |
trailing whitespaces (including lines that solely consist of | |
whitespaces) and a space character that is immediately followed | |
by a tab character inside the initial indent of the line are | |
considered whitespace errors. | |
</p> | |
<p>By default, the command outputs warning messages but applies the patch. | |
When <a href="git-apply.html">git-apply(1)</a> is used for statistics and not applying a | |
patch, it defaults to <tt>nowarn</tt>.</p> | |
<p>You can use different <tt><action></tt> to control this | |
behavior:</p> | |
<ul> | |
<li> | |
<p> | |
<tt>nowarn</tt> turns off the trailing whitespace warning. | |
</p> | |
</li> | |
<li> | |
<p> | |
<tt>warn</tt> outputs warnings for a few such errors, but applies the | |
patch as-is (default). | |
</p> | |
</li> | |
<li> | |
<p> | |
<tt>fix</tt> outputs warnings for a few such errors, and applies the | |
patch after fixing them (<tt>strip</tt> is a synonym --- the tool | |
used to consider only trailing whitespaces as errors, and the | |
fix involved <em>stripping</em> them, but modern gits do more). | |
</p> | |
</li> | |
<li> | |
<p> | |
<tt>error</tt> outputs warnings for a few such errors, and refuses | |
to apply the patch. | |
</p> | |
</li> | |
<li> | |
<p> | |
<tt>error-all</tt> is similar to <tt>error</tt> but shows all errors. | |
</p> | |
</li> | |
</ul> | |
</dd> | |
<dt> | |
--inaccurate-eof | |
</dt> | |
<dd> | |
<p> | |
Under certain circumstances, some versions of diff do not correctly | |
detect a missing new-line at the end of the file. As a result, patches | |
created by such diff programs do not record incomplete lines | |
correctly. This option adds support for applying such patches by | |
working around this bug. | |
</p> | |
</dd> | |
<dt> | |
-v | |
</dt> | |
<dt> | |
--verbose | |
</dt> | |
<dd> | |
<p> | |
Report progress to stderr. By default, only a message about the | |
current patch being applied will be printed. This option will cause | |
additional information to be reported. | |
</p> | |
</dd> | |
</dl> | |
</div> | |
<h2>Configuration</h2> | |
<div class="sectionbody"> | |
<dl> | |
<dt> | |
apply.whitespace | |
</dt> | |
<dd> | |
<p> | |
When no <tt>--whitespace</tt> flag is given from the command | |
line, this configuration item is used as the default. | |
</p> | |
</dd> | |
</dl> | |
</div> | |
<h2>Submodules</h2> | |
<div class="sectionbody"> | |
<p>If the patch contains any changes to submodules then <a href="git-apply.html">git-apply(1)</a> | |
treats these changes as follows.</p> | |
<p>If --index is specified (explicitly or implicitly), then the submodule | |
commits must match the index exactly for the patch to apply. If any | |
of the submodules are checked-out, then these check-outs are completely | |
ignored, i.e., they are not required to be up-to-date or clean and they | |
are not updated.</p> | |
<p>If --index is not specified, then the submodule commits in the patch | |
are ignored and only the absence of presence of the corresponding | |
subdirectory is checked and (if possible) updated.</p> | |
</div> | |
<h2>Author</h2> | |
<div class="sectionbody"> | |
<p>Written by Linus Torvalds <torvalds@osdl.org></p> | |
</div> | |
<h2>Documentation</h2> | |
<div class="sectionbody"> | |
<p>Documentation by Junio C Hamano</p> | |
</div> | |
<h2>GIT</h2> | |
<div class="sectionbody"> | |
<p>Part of the <a href="git.html">git(1)</a> suite</p> | |
</div> | |
<div id="footer"> | |
<div id="footer-text"> | |
Last updated 08-Jun-2008 22:46:18 UTC | |
</div> | |
</div> | |
</body> | |
</html> |