Closes https://linear.app/zed-industries/issue/Z-2689/huge-slowdown-when-working-in-large-git-repositories-like-webkit Closes https://github.com/zed-industries/community/issues/1770 In large git repositories (like Webkit), `git status` can be very slow. And our current approach of retrieving git statuses (one by one as we load paths), causes catastrophic slowdowns in these repos. This PR further optimizes our retrieval of git statuses (started in https://github.com/zed-industries/zed/pull/2728), so that when scanning a directory, we only load git statuses once, in a single batch, at the beginning of the scan. There is still an initial lag when opening `WebKit` in Zed, while the initial git status runs. But once this call completes, everything is fast. Let's come back to this problem later. For now, this makes Zed's directory scanning massively more efficient, even in the case of normal-sized repos like `zed`. The git status code was a huge percentage of zed's CPU usage when launching. Here is that code, highlighted in a flamegraph before and after this change: Before:  After:  Release Notes: - Fixed a bug where project paths took a very long time to load when working in large git repositories ([#1770](https://github.com/zed-industries/community/issues/1770))
3 files changedLine totals unavailable