X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=Documentation%2Fgit-ls-files.txt;h=9c5ef8e7a41425a02eeda8b28fafa26907aa7f47;hb=540bf654d007b3289adec37e3008c588ba677e25;hp=7ac6c7d84a701087f65d41ea06f82b80b3a7ef8f;hpb=30b0535f251a42aa3936e44041a8d25e0e578ab9;p=git.git diff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt index 7ac6c7d8..9c5ef8e7 100644 --- a/Documentation/git-ls-files.txt +++ b/Documentation/git-ls-files.txt @@ -87,8 +87,8 @@ detailed information on unmerged paths. For an unmerged path, instead of recording a single mode/SHA1 pair, the dircache records up to three such pairs; one from tree O in stage 1, A in stage 2, and B in stage 3. This information can be used by -the user (or Cogito) to see what should eventually be recorded at the -path. (see read-cache for more information on state) +the user (or the porcelain) to see what should eventually be recorded at the +path. (see git-read-tree for more information on state) Exclude Patterns @@ -115,14 +115,14 @@ An exclude pattern file used by (2) and (3) contains one pattern per line. A line that starts with a '#' can be used as comment for readability. -The list of patterns that is in effect at a given time is -built and ordered in the following way: +There are three lists of patterns that are in effect at a given +time. They are built and ordered in the following way: - * --exclude= and lines read from --exclude-from= - come at the beginning of the list of patterns, in the order - given on the command line. Patterns that come from the file - specified with --exclude-from are ordered in the same order - as they appear in the file. + * --exclude= from the command line; patterns are + ordered in the same order as they appear on the command line. + + * lines read from --exclude-from=; patterns are ordered + in the same order as they appear in the file. * When --exclude-per-directory= is specified, upon entering a directory that has such a file, its contents are @@ -130,11 +130,12 @@ built and ordered in the following way: are popped off when leaving the directory. Each pattern in the pattern list specifies "a match pattern" and -optionally the fate --- either a file that matches the pattern -is considered excluded or included. By default, this being -"exclude" mechanism, the fate is "excluded". A filename is -examined against the patterns in the list, and the first match -determines its fate. +optionally the fate; either a file that matches the pattern is +considered excluded or included. A filename is matched against +the patterns in the three lists; the --exclude-from list is +checked first, then the --exclude-per-directory list, and then +finally the --exclude list. The last match determines its fate. +If there is no match in the three lists, the fate is "included". A pattern specified on the command line with --exclude or read from the file specified with --exclude-from is relative to the @@ -168,9 +169,9 @@ An example: *.[oa] $ cat Documentation/.gitignore # ignore generated html files, + *.html # except foo.html which is maintained by hand !foo.html - *.html $ git-ls-files --ignored \ --exclude='Documentation/*.[0-9]' \ --exclude-from=.git/ignore \ @@ -179,7 +180,7 @@ An example: See Also -------- -link:read-cache.html[read-cache] +link:git-read-tree.html[git-read-tree] Author