# Move git status updates to a background thread \#2 \(\#24722\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/744579ede9fdcee44e6b44e8c4d6267829dd588b)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 744579ede9fdcee44e6b44e8c4d6267829dd588b

Requested commit: 744579ede9fdcee44e6b44e8c4d6267829dd588b

Commit: 744579ede9fdcee44e6b44e8c4d6267829dd588b

Tree: 23a4433fcc55783711fc8cee9d39764be62c2cba

Author: Kirill Bulatov

Committer: GitHub

## Message

```
Move git status updates to a background thread #2 (#24722)

Follow-up of https://github.com/zed-industries/zed/pull/24307

Brings back the PR and fixes the issue with the git status not
propagated, if computed too slow.
Now, git repo update
* waits in the background for all `scan_dir` repo status updates and
triggers another status update send afterwards
* ensures that the update sent is reported correctly (`scanning = true`)
if either FS or status scan is running still
* during worktree's git statuses updates, bumps `status_scan_id` to
ensure the repo update is reported to all subscribers

Release Notes:

- Improved project panel's speed in large projects
```

## Parents

- [592e8fbffc495b5c1c79aa0843642b4f390eb972](https://git.cafe/gitcafe/zed/commit/592e8fbffc495b5c1c79aa0843642b4f390eb972?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/744579ede9fdcee44e6b44e8c4d6267829dd588b?format=markdown)
