vscode: Source Control Not Updating for specific repository

Type: Bug

Hey,

Since last friday, my source control menu is no longer updating for only one repository. This only happens with one specific repository, but the git commands (from command line and git-gui) work for this specific repository, so it would seem that the git repository itself is working correctly.

When I open the repo in vscode, it seems to be largely correct - the changes are correctly shown as either staged or changes depending on their state. However, using the controls in the source code will not be reflected in section. This is shown in these images:

Initially the shown infomation is correct (the terminal is a git bash with ‘git status’ output shown)

initial

Then I use the ‘Unstage Changes’ button for each file and repeat the git status

after

Note that the git status output shows the files have been unstaged, but the Source Control section does not. Furthermore, if I repeat this process with the changes initally unstaged, a similar beahviour occurs, just that the Source Control does not reflect them being staged.

I have tried:

  • Re-installing vscode
  • Re-installing git
  • The insiders version
  • Running vscode with no extensions
  • Re-cloning the repository

but the same behaviour is seen every time. I have also observed the behaviour to not be present on my colleges device.

Thanks

VS Code version: Code 1.85.1 (0ee08df0cf4527e40edc9aa28f4b5bd38bbff2b2, 2023-12-13T09:49:37.021Z) OS version: Windows_NT x64 10.0.22621 Modes:

System Info
Item Value
CPUs 13th Gen Intel® Core™ i7-13700H (20 x 2918)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
Load (avg) undefined
Memory (System) 31.68GB (19.79GB free)
Process Argv –disable-extensions . --crash-reporter-id 186140f6-92b9-4d99-a583-380e09ec31d2
Screen Reader no
VM 0%
Extensions disabled
A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscoreces:30445986
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593:30376534
pythonvs932:30410667
py29gd2263:30899288
vsclangdc:30486549
c4g48928:30535728
dsvsc012cf:30540253
azure-dev_surveyone:30548225
2e4cg342:30602488
f6dab269:30613381
2i9eh265:30646982
showlangstatbar:30737416
fixshowwlkth:30771522
showindicator:30805244
pythongtdpath:30769146
i26e3531:30792625
welcomedialog:30910333
pythonnosmt12:30797651
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
dsvsc013:30795093
dsvsc014:30804076
dsvsc015:30845448
pythontestfixt:30902429
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
pythontbext0:30879054
accentitlementst:30887150
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
aa_t_chat:30882232
cp7184c:30925681

About this issue

  • Original URL
  • State: closed
  • Created 6 months ago
  • Reactions: 4
  • Comments: 16 (5 by maintainers)

Most upvoted comments

Same thing occurred to me. I was attempting to find a solution for this issue and reached out to these comments. After reading the comments, I renamed my branch because it happened to a specific branch. I double-checked it with another branch, and after renaming that long branch name, the source control issue was resolved for me.

This issue has been fixed starting with today’s VS Code Insiders release.

Version: 1.86.0-insider (Universal)
Commit: 4caba0473af34a2b128cedc46f6b13316aae9226
Date: 2024-01-08T05:37:49.269Z
Electron: 27.1.3
ElectronBuildId: 25612240
Chromium: 118.0.5993.159
Node.js: 18.17.1
V8: 11.8.172.18-electron.0
OS: Darwin arm64 23.2.0

@lszomoru From my observation, looks like the issue is happening only when the git branch name is long. Source control panel is working fine when the branch name is short.

Please compare the git logs from this post and my previous post.

Recording 2023-12-20 at 11 18 04

2023-12-20 11:17:13.356 [info] > git add -A – C:\Users\EEEEEEE\workspace\YYYYY\YYYYYCodebase\smartform-web-app\src\app\src\pages\Summary\RRR\ConfigurePortal\OtherInfoTab\Voucher\Voucher.tsx [156ms] 2023-12-20 11:17:13.528 [info] > git config --get commit.template [159ms] 2023-12-20 11:17:13.573 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/feature/RRR-Initial-Setup refs/remotes/feature/RRR-Initial-Setup [193ms] 2023-12-20 11:17:13.744 [info] > git status -z -uall [162ms] 2023-12-20 11:17:15.819 [info] > git config --get commit.template [158ms] 2023-12-20 11:17:15.909 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/feature/RRR-Initial-Setup refs/remotes/feature/RRR-Initial-Setup [230ms] 2023-12-20 11:17:16.151 [info] > git status -z -uall [217ms] 2023-12-20 11:17:19.611 [info] > git branch [142ms] 2023-12-20 11:17:19.745 [info] > git reset -q HEAD – C:\Users\EEEEEEE\workspace\YYYYY\YYYYYCodebase\smartform-web-app\src\app\src\pages\Summary\RRR\ConfigurePortal\OtherInfoTab\Voucher\Voucher.tsx [119ms] 2023-12-20 11:17:19.925 [info] > git config --get commit.template [172ms] 2023-12-20 11:17:19.964 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/feature/RRR-Initial-Setup refs/remotes/feature/RRR-Initial-Setup [202ms] 2023-12-20 11:17:20.147 [info] > git status -z -uall [166ms] 2023-12-20 11:17:22.123 [info] > git config --get commit.template [167ms] 2023-12-20 11:17:22.184 [info] > git for-each-ref --format=%(refname)%00%(upstream:short)%00%(objectname)%00%(upstream:track)%00%(upstream:remotename)%00%(upstream:remoteref) --ignore-case refs/heads/feature/RRR-Initial-Setup refs/remotes/feature/RRR-Initial-Setup [215ms] 2023-12-20 11:17:22.444 [info] > git status -z -uall [251ms]

I am experiencing a similar issue. This is the error in the developer tools console:

ERR Failed to execute git: Error: Failed to execute git at t.$P.j (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:890158) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async t.$P.exec (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:889264) at async $.exec (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:893981) at async $.getCommitCount (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:916095) at async M.eb (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:993243) at async M.db (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:992935) at async M.getCommitCount (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:984180) at async t.$Eb.resolveHistoryItemGroupCommonAncestor (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\git\dist\main.js:2:921155) at async U.$resolveHistoryItemGroupCommonAncestor (c:\Users\mywindowsaccount\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:143:127058)

Does the issue get resolved in you set scm.showIncomingChanges and scm.showOutgoingChanges settings to false?

In my case this solve the issue

@william-clayton, thanks for filing this issue and this does look like a regression. Could you please use the “Developer: Toggle Developer Tools” command from the command palette and see if there are any relevant error there?

Could you tell me more about the branch that is currently checked out: 1) Does the branch have a remote? 2) Does the branch have any special characters in its name? 3) Are you able to reproduce the same on the default branch (ex: main) of the repository?

Does the issue get resolved in you set scm.showIncomingChanges and scm.showOutgoingChanges settings to false?

Note this is fixed by downgrading to version 1.84.2