This backend is part of Emacs and is enabled by default. (Other backends may need installation of add-on packages and their proper configuration.)
It determines the contents of the project based on the VCS repository’s configuration (if any), excluding the “ignored” files from the output.
It has some performance optimizations for listing the files with some of the popular VCS systems (currently Git and Mercurial).
By default, files which are neither registered with nor ignored by the VCS are considered part of the project. Customize this variable to nil to change that.
Using this variable you can add more ignore patterns to the project, to
exclude more files from the project’s file listing. The value is a list
of glob strings. They can match both regular files and directories. To
anchor an entry to the project root, start it with ./. To match
directories only, end it with /. When this variable has
directory-local value, it will only be applied to the corresponding
directory subtree.
This variable allows you to change the automatically detected name of the project to a string of your choice. By default the name is the base name of its root directory.
This variable allows you to set up detection of non-VC projects in this backend, and also to have some subdirectories detected as separate projects. The value is a list.
Each element is either a base file name or a glob pattern for such.
Example values: .dir-locals.el, package.json, requirements.txt, *.gemspec.