Skip to content

Commit

Permalink
Feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
raxod502 committed Mar 1, 2023
1 parent 886675d commit e49fee4
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 3 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,7 @@ To get the most of Projectile you also need to enable (and potentially install)
* Using Projectile over TRAMP might be slow in certain cases.
* Some commands might misbehave on complex project setups (e.g. a git project with submodules).
* Projectile was mostly tested on Unix OS-es (e.g. GNU/Linux and macOS), so some functionality might not work well on Windows.
* In Git repositories, deleted files are still shown in `projectile-find-file` until their deletions are staged, due to a limitation of `git ls-files`. If you install [fd](https://github.com/sharkdp/fd) then it is automatically used instead, and does not have this problem. (You can inhibit the use of `fd` by setting `projectile-git-use-fd` to nil.)

## Known issues

Expand Down
21 changes: 21 additions & 0 deletions doc/modules/ROOT/pages/faq.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,27 @@ super convenient for many people.
Eventually this was changed in Projectile 2.0. That's why currently Projectile
requires users to select a prefix key for its commands explicitly.

== What dependencies does Projectile have?

Projectile will work without any external dependencies out of the box.
However, if you have various tools installed, they will be
automatically used when appropriate to improve performance.

Inside version control repositories, VC tools are used when installed
to list files more efficiently. The supported tools include git, hg,
fossil, bzr, darcs, pijul, and svn.

Outside version control repositories, file search tools are used when
installed for a faster search than pure Elisp. The supported tools
include https://github.com/sharkdp/fd[fd] and GNU/BSD find.

By default, if fd is installed, it is also used inside Git
repositories as an alternative to `git ls-files`, because `git
ls-files` has the limitation that it also lists deleted files until
the deletions are staged, which can be confusing. You can eliminate
the use of fd in this circumstance by setting `projectile-git-use-fd`
to nil.

== Do you need some help cleanup up all those tickets that have piled up?

Certainly! In our https://github.com/bbatsov/projectile/issues/[issue
Expand Down
7 changes: 4 additions & 3 deletions projectile.el
Original file line number Diff line number Diff line change
Expand Up @@ -686,7 +686,8 @@ This may change Projectile's performance in large Git repositories
depending on your system, but it will also work around the Git behavior
that causes deleted files to still be shown in Projectile listings until
their deletions are staged."
:type 'boolean)
:type 'boolean
:package-version '(projectile . "2.8.0"))

(defcustom projectile-git-command "git ls-files -zco --exclude-standard"
"Command used by projectile to get the files in a git project."
Expand Down Expand Up @@ -1445,9 +1446,9 @@ IGNORED-DIRECTORIES may optionally be provided."
"Determine which external command to invoke based on the project's VCS.
Fallback to a generic command when not in a VCS-controlled project."
(pcase vcs
('git (if projectile-git-use-fd
('git (if (and projectile-git-use-fd projectile-fd-executable)
(concat
(or projectile-fd-executable "fdfind")
projectile-fd-executable
" "
projectile-git-fd-args)
projectile-git-command))
Expand Down

0 comments on commit e49fee4

Please sign in to comment.