glossary: explain "master" and "origin"
[git.git] / Documentation / git-apply.txt
index 8cbbb4b..51c7d47 100644 (file)
@@ -1,15 +1,17 @@
 git-apply(1)
 ============
-v0.1, June 2005
 
 NAME
 ----
-git-apply - Apply patch on a GIT index file and a work tree
+git-apply - Apply patch on a git index file and a work tree
 
 
 SYNOPSIS
 --------
-'git-apply' [--no-merge] [--stat] [--summary] [--check] [--index] [--show-files] [--apply] [<patch>...]
+[verse]
+'git-apply' [--stat] [--numstat] [--summary] [--check] [--index] [--apply]
+         [--no-add] [--index-info] [--allow-binary-replacement] [-z]
+         [<patch>...]
 
 DESCRIPTION
 -----------
@@ -22,15 +24,16 @@ OPTIONS
        The files to read patch from.  '-' can be used to read
        from the standard input.
 
---no-merge::
-       The default mode of operation is the merge behaviour
-       which is not implemented yet.  This flag explicitly
-       tells the program not to use the merge behaviour.
-
 --stat::
        Instead of applying the patch, output diffstat for the
        input.  Turns off "apply".
 
+--numstat::
+       Similar to \--stat, but shows number of added and
+       deleted lines in decimal notation and pathname without
+       abbreviation, to make it more machine friendly.  Turns
+       off "apply".
+
 --summary::
        Instead of applying the patch, output a condensed
        summary of information obtained from git diff extended
@@ -51,8 +54,19 @@ OPTIONS
        up-to-date, it is flagged as an error.  This flag also
        causes the index file to be updated.
 
---show-files::
-       Show summary of files that are affected by the patch.
+--index-info::
+       Newer git-diff output has embedded 'index information'
+       for each blob to help identify the original version that
+       the patch applies to.  When this flag is given, and if
+       the original version of the blob is available locally,
+       outputs information about them to the standard output.
+
+-z::
+       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 `\t`, `\n`, and `\\`,
+       respectively.
 
 --apply::
        If you use any of the options marked ``Turns off
@@ -61,6 +75,23 @@ OPTIONS
        patch.  Give this flag after those flags to also apply
        the patch.
 
+--no-add::
+       When applying a patch, ignore additions made by the
+       patch.  This can be used to extract common part between
+       two files by first running `diff` on them and applying
+       the result with this option, which would apply the
+       deletion part but not addition part.
+
+--allow-binary-replacement::
+       When applying a patch, which is a git-enhanced patch
+       that was prepared to record the pre- and post-image object
+       name in full, and the path being patched exactly matches
+       the object the patch applies to (i.e. "index" line's
+       pre-image object name is what is in the working tree),
+       and the post-image object is available in the object
+       database, use the post-image object as the patch
+       result.  This allows binary files to be patched in a
+       very limited way.
 
 Author
 ------