Cannot stage an updated submodule from the Git/Graph view (works via terminal)

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Environment:

OS: macOS (Darwin 25.5.0)
Cursor version: Version: 3.7.36
VS Code Extension API: 1.105.1
Commit: 776d1f9d76df50a4e0aeca61819a88e7c1b861e0
Date: 2026-06-13T00:31:56.287Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
xterm.js: 6.1.0-beta.256
OS: Darwin arm64 25.5.0
Description: After updating a git submodule, the submodule change shows up in the Source Control / Graph (Git) view, but clicking the “+” to stage it does nothing — the change won’t stage. If I stage it manually in the terminal (git add ), it works, and after that Cursor behaves normally and I can commit it from the UI.

Steps to reproduce:

Have a repo with a git submodule.
Update the submodule (so the parent repo shows a new submodule commit pointer).
Open the Source Control / Graph (Git) view in Cursor.
Try to stage the submodule change from the UI (the “+” / Stage Changes button).
Expected behavior: The updated submodule stages like any other change and can then be committed.

Actual behavior: Staging from the UI has no effect. The only workaround is git add in the terminal, after which committing from the UI works fine.

Workaround: Stage the submodule manually via the terminal.

Steps to Reproduce

Try to stage the submodule change from the UI (the “+” / Stage Changes button).

Expected Behavior

Stages correctly.

Operating System

MacOS

Version Information

Version: 3.7.36
VS Code Extension API: 1.105.1
Commit: 776d1f9d76df50a4e0aeca61819a88e7c1b861e0
Date: 2026-06-13T00:31:56.287Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
xterm.js: 6.1.0-beta.256
OS: Darwin arm64 25.5.0

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey @AronCsatlos! Thanks for reporting this.

This is quite an old version of Cursor at this point. Could you please try upgrading to v3.11 (downloads) and check whether the issue still reproduces? I wasn’t able to reproduce it on 3.11—staging changes to the submodule from the UI works fine for me.

Hey @Colin ,

thanks for checking this. Upgraded to the latest version and the issue is still present.
I’ll write down the steps, maybe I do something not right:

  1. in terminal go to a repo where the project has a submodule
  2. open cursor in folder wirh “cursor .”
  3. update the submodule: git submodule update --init --recursive --remote --checkout mysubmodule
  4. on the version control tab I see the submodule change, but when I click on the “+” sign to stage it, nothing happens
  5. if I stage it in terminal and refresh the view, I see as staged

Version: 3.11.13
VS Code Extension API: 1.125.0
Commit: 3f21b08f0b436a07be29fbfe00b304fa15553350
Date: 2026-07-10T01:45:28.254Z
Layout: IDE
Build Type: Stable
Release Track: Default
Electron: 40.10.3
Chromium: 144.0.7559.236
Node.js: 24.15.0
V8: 14.4.258.32-electron.0
xterm.js: 6.1.0-beta.256
OS: Darwin arm64 25.5.0

No dice!

Maybe there’s a specific Git error that’s being swallowed. Can you check the Output → Git view for any errors?

Hey,

I tried it again (and again) and now it works. If I encounter this again, I’ll catch the Git output!

Hey, it came up again. Checked the Git output when clicking the [+] like crazy - no output at all.

If it happens again, try to grab errors you see in the Console section of Developer: Toggle Developer Tools.

Unfortunately, until we know the circumstances under which it reproduces (and the underlying error), there’s not much we can do!