Add a basic test case for git send-email, and fix some real bugs discovered.
[gitweb.git] / Documentation / git-apply.txt
index 626e281596c57d38b6df7bbf311494ee9c74da7f..e93ea1f26554f99e9dee532e0fa585309ae43110 100644 (file)
@@ -8,7 +8,11 @@ git-apply - Apply patch on a git index file and a work tree
 
 SYNOPSIS
 --------
-'git-apply' [--stat] [--numstat] [--summary] [--check] [--index] [--apply] [--no-add] [--index-info] [--allow-binary-replacement] [-z] [<patch>...]
+[verse]
+'git-apply' [--stat] [--numstat] [--summary] [--check] [--index] [--apply]
+         [--no-add] [--index-info] [--allow-binary-replacement] [-z] [-pNUM]
+         [-CNUM] [--whitespace=<nowarn|warn|error|error-all|strip>]
+         [<patch>...]
 
 DESCRIPTION
 -----------
@@ -65,6 +69,16 @@ OPTIONS
        backslash characters replaced with `\t`, `\n`, and `\\`,
        respectively.
 
+-p<n>::
+       Remove <n> leading slashes from traditional diff paths. The
+       default is 1.
+
+-C<n>::
+       Ensure at least <n> lines of surrounding context match before
+       and after each change.  When fewer lines of surrounding
+       context exist they all most match.  By default no context is
+       ever ignored.
+
 --apply::
        If you use any of the options marked ``Turns off
        "apply"'' above, git-apply reads and outputs the
@@ -90,6 +104,35 @@ OPTIONS
        result.  This allows binary files to be patched in a
        very limited way.
 
+--whitespace=<option>::
+       When applying a patch, detect a new or modified line
+       that ends with trailing whitespaces (this includes a
+       line that solely consists of whitespaces).  By default,
+       the command outputs warning messages and applies the
+       patch.
+       When `git-apply` is used for statistics and not applying a
+       patch, it defaults to `nowarn`.
+       You can use different `<option>` to control this
+       behaviour:
++
+* `nowarn` turns off the trailing whitespace warning.
+* `warn` outputs warnings for a few such errors, but applies the
+  patch (default).
+* `error` outputs warnings for a few such errors, and refuses
+  to apply the patch.
+* `error-all` is similar to `error` but shows all errors.
+* `strip` outputs warnings for a few such errors, strips out the
+  trailing whitespaces and applies the patch.
+
+
+Configuration
+-------------
+
+apply.whitespace::
+       When no `--whitespace` flag is given from the command
+       line, this configuration item is used as the default.
+
+
 Author
 ------
 Written by Linus Torvalds <torvalds@osdl.org>