diff: document the format of the -O (diff.orderFile) file

Signed-off-by: Richard Hansen <hansenr@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Richard Hansen 2017-01-15 17:16:31 -05:00 коммит произвёл Junio C Hamano
Родитель 1a5fccc0c2
Коммит 874444b704
2 изменённых файлов: 34 добавлений и 5 удалений

Просмотреть файл

@ -99,11 +99,10 @@ diff.noprefix::
If set, 'git diff' does not show any source or destination prefix.
diff.orderFile::
File indicating how to order files within a diff, using
one shell glob pattern per line.
File indicating how to order files within a diff.
See the '-O' option to linkgit:git-diff[1] for details.
If `diff.orderFile` is a relative pathname, it is treated as
relative to the top of the working tree.
Can be overridden by the '-O' option to linkgit:git-diff[1].
diff.renameLimit::
The number of files to consider when performing the copy/rename

Просмотреть файл

@ -466,11 +466,41 @@ information.
endif::git-format-patch[]
-O<orderfile>::
Output the patch in the order specified in the
<orderfile>, which has one shell glob pattern per line.
Control the order in which files appear in the output.
This overrides the `diff.orderFile` configuration variable
(see linkgit:git-config[1]). To cancel `diff.orderFile`,
use `-O/dev/null`.
+
The output order is determined by the order of glob patterns in
<orderfile>.
All files with pathnames that match the first pattern are output
first, all files with pathnames that match the second pattern (but not
the first) are output next, and so on.
All files with pathnames that do not match any pattern are output
last, as if there was an implicit match-all pattern at the end of the
file.
If multiple pathnames have the same rank (they match the same pattern
but no earlier patterns), their output order relative to each other is
the normal order.
+
<orderfile> is parsed as follows:
+
--
- Blank lines are ignored, so they can be used as separators for
readability.
- Lines starting with a hash ("`#`") are ignored, so they can be used
for comments. Add a backslash ("`\`") to the beginning of the
pattern if it starts with a hash.
- Each other line contains a single pattern.
--
+
Patterns have the same syntax and semantics as patterns used for
fnmantch(3) without the FNM_PATHNAME flag, except a pathname also
matches a pattern if removing any number of the final pathname
components matches the pattern. For example, the pattern "`foo*bar`"
matches "`fooasdfbar`" and "`foo/bar/baz/asdf`" but not "`foobarx`".
ifndef::git-format-patch[]
-R::