Merge branch 'jc/ls-files-doc-update'

The documentation for the --exclude-per-directory option marked it
as deprecated, which confused readers into thinking there may be a
plan to remove it in the future, which was not our intention.

* jc/ls-files-doc-update:
  ls-files: avoid the verb "deprecate" for individual options
maint
Junio C Hamano 2024-02-02 11:31:51 -08:00
commit bbc8c05670
1 changed files with 18 additions and 5 deletions

View File

@ -119,8 +119,10 @@ OPTIONS


--exclude-per-directory=<file>:: --exclude-per-directory=<file>::
Read additional exclude patterns that apply only to the Read additional exclude patterns that apply only to the
directory and its subdirectories in <file>. Deprecated; use directory and its subdirectories in <file>. If you are
--exclude-standard instead. trying to emulate the way Porcelain commands work, using
the `--exclude-standard` option instead is easier and more
thorough.


--exclude-standard:: --exclude-standard::
Add the standard Git exclusions: .git/info/exclude, .gitignore Add the standard Git exclusions: .git/info/exclude, .gitignore
@ -298,9 +300,8 @@ traversing the directory tree and finding files to show when the
flags --others or --ignored are specified. linkgit:gitignore[5] flags --others or --ignored are specified. linkgit:gitignore[5]
specifies the format of exclude patterns. specifies the format of exclude patterns.


Generally, you should just use --exclude-standard, but for historical These exclude patterns can be specified from the following places,
reasons the exclude patterns can be specified from the following in order:
places, in order:


1. The command-line flag --exclude=<pattern> specifies a 1. The command-line flag --exclude=<pattern> specifies a
single pattern. Patterns are ordered in the same order single pattern. Patterns are ordered in the same order
@ -322,6 +323,18 @@ top of the directory tree. A pattern read from a file specified
by --exclude-per-directory is relative to the directory that the by --exclude-per-directory is relative to the directory that the
pattern file appears in. pattern file appears in.


Generally, you should be able to use `--exclude-standard` when you
want the exclude rules applied the same way as what Porcelain
commands do. To emulate what `--exclude-standard` specifies, you
can give `--exclude-per-directory=.gitignore`, and then specify:

1. The file specified by the `core.excludesfile` configuration
variable, if exists, or the `$XDG_CONFIG_HOME/git/ignore` file.

2. The `$GIT_DIR/info/exclude` file.

via the `--exclude-from=` option.

SEE ALSO SEE ALSO
-------- --------
linkgit:git-read-tree[1], linkgit:gitignore[5] linkgit:git-read-tree[1], linkgit:gitignore[5]