Explorer shows tracked files as untracked despite clean Git status

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Cursor 3.23.23, Windows build 26200
Git 2.53.0, 18,368 tracked files
git status --porcelain was empty
.gitkeep files were confirmed tracked
Explorer still displayed U and change dots

Steps to Reproduce

Open a large Git repository in Cursor on Windows. This repository has approximately 18,368 tracked files.
Commit and push all pending changes.
Verify the repository is clean:

git status --porcelain
The command returns no output.
Verify the affected placeholder is tracked:

git ls-files --error-unmatch – knowledge-store/target/decisions/.gitkeep
Expand the nested folders in Cursor Explorer.
Observe that .gitkeep displays U, while parent folders display source-control change dots.
Expected: No source-control decorations because the working tree is clean and the file is tracked.

Actual: Cursor displays stale untracked/change decorations that disagree with Git CLI state.

Tree is accurate after a restart of the application.

Expected Behavior

Tree looks clean with no blue dots or files decorated with “U”.

Screenshots / Screen Recordings

Operating System

Windows 10/11
MacOS

Version Information

Cursor 3.23.23, Windows build 26200

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey @JeffC, thanks for the detailed report and the screenshot, that helps a lot.

One thing that can cause this in larger repos: if a single Git refresh ever sees more than 10,000 changed or untracked files (the default for the git.statusLimit setting), Cursor stops auto-refreshing Git status for that window. That can happen right before committing a large new folder, for example. After that, commits made from a terminal or by an agent won’t update the Explorer until something triggers a refresh or you restart, which would match what you’re seeing.

Next time it happens, could you try the following?

  1. Open the Source Control view (Ctrl+Shift+G) and check whether it shows “Too many changes were detected” at the top.
  2. Open the Command Palette (Ctrl+Shift+P) and run Git: Refresh.
  3. Check the Explorer again. Do the U and the folder dots clear?

It would also help to know:

  • Did you commit from the terminal (or have an agent commit), or from the Source Control panel?
  • Roughly how many files were pending before that commit?

If Git: Refresh clears it, running it after large commits is a quicker workaround than restarting. Let me know what you find and we’ll go from there.