vscode: The integrated source control (Git) is very very slow in the latest version (1.78.x)

Type: Performance Issue

Before, the integrated source control (Git) in VSC is very fast but now it is very very slow. I’m not sure but this seems to happen after I update my VSC to the latest version (1.78.x). I thought that the problem is at my installed “git for Windows” (it worked well before I updated VSC) and updated it to the latest version but nothing changed, I think this is a problem of the latest version of VSC, or maybe at 1 of git extensions I installed but I’m not sure.

Note: If I use git through Git Bash, everything is still fine (fast as it should be)

Here are some log in the git output inside VSC: 2023-05-23 16:46:35.054 [info] > git add -A – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [27846ms]

2023-05-23 16:48:39.228 [info] > git ls-files --stage – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [2601ms] 2023-05-23 16:48:39.231 [info] > git ls-tree -l HEAD – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [2608ms] 2023-05-23 16:48:39.239 [info] > git ls-files --stage – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [2529ms]

2023-05-23 16:50:24.957 [info] > git ls-tree -l HEAD – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [105697ms] 2023-05-23 16:50:24.958 [info] > git ls-tree -l HEAD – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [105701ms]

2023-05-23 16:50:27.984 [info] > git ls-files --stage – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [65005ms] 2023-05-23 16:50:27.987 [info] > git ls-files --stage – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.json [65011ms]

2023-05-23 16:52:58.511 [info] > git add -A – D:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees\appsettings.Development.json [29306ms]

2023-05-23 16:53:44.880 [info] > git fetch [16761ms]

2023-05-23 16:55:37.421 [info] > git -c user.useConfigOnly=true commit --quiet --allow-empty-message --file - [100953ms]

2023-05-23 16:55:43.820 [info] > git show --textconv :CompanyEmployees/appsettings.json [2493ms] 2023-05-23 16:55:43.820 [info] > git show --textconv :CompanyEmployees/appsettings.Development.json [2479ms]

2023-05-23 16:56:12.377 [info] > git pull --tags origin main [31072ms]

2023-05-23 16:56:35.825 [info] > git push origin main:main [23445ms]

Do not know why it took so much time for the basic operations (files in my repo are quite small, nothing big/huge at all)

VS Code version: Code 1.78.2 (b3e4e68a0bc097f0ae7907b217c1119af9e03435, 2023-05-10T14:39:26.248Z) OS version: Windows_NT x64 10.0.22621 Modes: Sandboxed: Yes

System Info
Item Value
CPUs 12th Gen Intel® Core™ i5-12400F (12 x 2496)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: disabled_off
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.84GB (13.95GB free)
Process Argv –crash-reporter-id e283a491-24a6-4982-a709-f965337f0fd8
Screen Reader no
VM 0%
Process Info
CPU %	Mem MB	   PID	Process
    0	    96	 25844	code main
    0	    91	  4200	shared-process
    0	    71	 14160	     ptyHost
    0	     7	 23176	       console-window-host (Windows internal process)
    0	     5	 25972	       "C:\Program Files\Git\bin\bash.exe"
    0	    11	 33292	         "C:\Program Files\Git\bin\..\usr\bin\bash.exe"
    0	   382	 18912	extensionHost [1]
    0	    76	  1904	     electron-nodejs ("D:\Program Files\Microsoft VS Code\Code.exe" --ms-enable-electron-run-as-node "d:\Program Files\Microsoft VS Code\resources\app\extensions\markdown-language-features\server\dist\node\workerMain" --node-ipc --clientProcessId=18912)
    0	    78	  4436	     electron-nodejs ("D:\Program Files\Microsoft VS Code\Code.exe" --ms-enable-electron-run-as-node "d:\Program Files\Microsoft VS Code\resources\app\extensions\json-language-features\server\dist\node\jsonServerMain" --node-ipc --clientProcessId=18912)
    0	    78	  9060	     electron-nodejs ("D:\Program Files\Microsoft VS Code\Code.exe" --ms-enable-electron-run-as-node "c:\Users\Luat Nguyen\.vscode\extensions\formulahendry.auto-rename-tag-0.1.10\packages\server\dist\serverMain.js" --node-ipc --clientProcessId=18912)
    0	   125	 28156	     electron-nodejs ("D:\Program Files\Microsoft VS Code\Code.exe" --ms-enable-electron-run-as-node "c:\Users\Luat Nguyen\.vscode\extensions\streetsidesoftware.code-spell-checker-2.20.4\packages\_server\dist\main.js" --node-ipc --clientProcessId=18912)
    0	    25	 31636	     "C:\Program Files\Microsoft\jdk-17.0.7.7-hotspot\bin\java" -DwatchParentProcess=false -XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError "-XX:HeapDumpPath=c:\Users\Luat Nguyen\AppData\Roaming\Code\User\globalStorage\redhat.vscode-xml" -Xmx64M -cp "c:\Users\Luat Nguyen\.vscode\extensions\redhat.vscode-xml-0.25.0-win32-x64\server\org.eclipse.lemminx-0.25.0-uber.jar" org.eclipse.lemminx.XMLServerLauncher
    0	     6	 31916	       console-window-host (Windows internal process)
    0	   556	 33392	     dotnet.exe "c:\Users\Luat Nguyen\.vscode\extensions\ms-dotnettools.csharp-1.25.7-win32-x64\.omnisharp\1.39.6-net6.0\OmniSharp.dll" -z -s d:\src\zero\main\ASPdotNET-Web-BE-Zero\CompanyEmployees.sln --hostPID 18912 DotNet:enablePackageRestore=false --encoding utf-8 --loglevel information --plugin "c:\Users\Luat Nguyen\.vscode\extensions\ms-dotnettools.csharp-1.25.7-win32-x64\.razor\OmniSharpPlugin\Microsoft.AspNetCore.Razor.OmniSharpPlugin.dll" FileOptions:SystemExcludeSearchPatterns:0=**/.git FileOptions:SystemExcludeSearchPatterns:1=**/.svn FileOptions:SystemExcludeSearchPatterns:2=**/.hg FileOptions:SystemExcludeSearchPatterns:3=**/CVS FileOptions:SystemExcludeSearchPatterns:4=**/.DS_Store FileOptions:SystemExcludeSearchPatterns:5=**/Thumbs.db FileOptions:SystemExcludeSearchPatterns:6=**/.classpath FileOptions:SystemExcludeSearchPatterns:7=**/.project FileOptions:SystemExcludeSearchPatterns:8=**/.settings FileOptions:SystemExcludeSearchPatterns:9=**/.factorypath FormattingOptions:EnableEditorConfigSupport=true Sdk:IncludePrereleases=true formattingOptions:useTabs=false formattingOptions:tabSize=2 formattingOptions:indentationSize=2
    0	     6	  4804	       console-window-host (Windows internal process)
    0	    40	 24088	   utility-network-service
    0	   293	 24300	window [1] (MAIN-ZERO-ASPdotNET-Web-BE (Workspace))
    0	   114	 24460	   gpu-process
    0	    80	 26432	fileWatcher [1]
    0	    25	 26516	   crashpad-handler
    0	   100	 30084	window [2] (Issue Reporter)
Workspace Info
|  Window (MAIN-ZERO-ASPdotNET-Web-BE (Workspace))
|    Folder (ASPdotNET-Web-BE-Zero): 355 files
|      File types: cs(129) cache(36) json(22) csproj(9) props(9) targets(9)
|                  txt(9) editorconfig(9) v2(2) vsidx(2)
|      Conf files: csproj(9) sln(1);
Extensions (52)
Extension Author (truncated) Version
better-comments aar 3.0.2
Bookmarks ale 13.3.1
copy-relative-path ale 0.0.2
All-Autocomplete Ati 0.0.26
compare-view che 0.13.0
vscode-better-align cho 1.4.2
path-intellisense chr 2.8.4
bracket-select chu 2.0.2
vscode-structurizr cia 0.0.9
gitignore cod 0.9.0
csharp-grammar-extended dan 1.1.1
githistory don 0.6.20
xml Dot 2.5.1
gitlens eam 13.6.0
LogFileHighlighter emi 2.16.0
json-tools eri 1.0.2
auto-close-tag for 0.5.14
auto-rename-tag for 0.1.10
auto-using Fud 0.7.15
copilot Git 1.86.82
todo-tree Gru 0.0.226
output-colorizer IBM 0.1.2
open-file-from-path jac 1.3.4
vscode-text-pastry jkj 1.3.1
vscode-peacock joh 4.2.2
workspace-cacheclean Mam 0.0.2
render-crlf med 1.6.1
vscode-filesize mkx 3.1.0
csharp ms- 1.25.7
vscode-dotnet-pack ms- 1.0.12
remote-explorer ms- 0.4.0
indent-rainbow ode 8.3.1
material-icon-theme PKi 4.27.0
vscode-thunder-client ran 2.7.1
vscode-xml red 0.25.0
partial-diff ryu 1.4.3
bracket-jumper sas 1.1.8
trailing-spaces sha 0.4.1
svg-preview Sim 2.8.3
cucumber ste 0.14.0
code-spell-checker str 2.20.4
ASPNETCore-VSCode-Extensions Syn 21.2.3
Blazor-VSCode-Extensions Syn 21.2.3
c4-dsl-extension sys 3.4.1
bracket-padder via 0.3.0
highlight-matching-tag vin 0.11.0
intellicode-api-usage-examples Vis 0.2.7
vscodeintellicode Vis 1.2.30
vscodeintellicode-completions Vis 1.0.22
vscode-todo-highlight way 1.0.5
markdown-all-in-one yzh 3.5.1
json Zai 2.0.2
A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
vslsvsres303:30308271
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscorecescf:30445987
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdf:30486550
c4g48928:30535728
dsvsc012cf:30540253
pynewext54:30695312
azure-dev_surveyone:30548225
vsccc:30610678
2e4cg342:30602488
pyind779:30671433
f6dab269:30613381
pythonsymbol12:30671437
showlangstatbar:30737416
vsctsb:30748421
pythonms35:30701012
j16hj152:30706079
ecj1e332:30736112
pythonfmttext:30731395
fixshowwlkth:30730052
pythongtdpathcf:30739705

About this issue

  • Original URL
  • State: open
  • Created a year ago
  • Reactions: 34
  • Comments: 37 (1 by maintainers)

Most upvoted comments

I have the same issue on Windows 11
Is there any solution?

code --version 1.85.1 x64

git version 2.43.0.windows.1

Edition Windows 11 Pro Version 23H2 OS build 22631.2861 Experience Windows Feature Experience Pack 1000.22681.1000.0

Same issue here on Mac Sonoma with M1 Pro. Did you find any solution?

code --version 1.84.2 1a5daa3 x64

it’s unusably slow for me. CLI is nice and speedy but anything through the UI is worthless.

I have a same issue on Macbook M1 when using dev-container.

code --version 1.84.2 1a5daa3a0231a0fbba4f14db7ec463cf99d7768e x64

it’s unusably slow for me. CLI is nice and speedy but anything through the UI is worthless.

I noticed if the folder opened in vscode consists of a bunch of sub git folders, the git version control will be much slower than a folder with only 1 git repository/folder.

It’s not the case with the number of files in my case. It’s slower even if there’s 1 change in a git folder. But the same is faster in the case of a single git folder.

The source Control tab is very slow for me. When I click to view the changed file in the tab. Happen with both MacOS and Windows. I doubt it is related to the network, but why if I use in command line it is very fast.

https://github.com/microsoft/vscode/assets/300961/57c441c5-a38c-4125-85d7-f1b5968179cb

I have just updated to 1.80 and source control takes a minute or two to load up. Whenever we open vs code before, it used to be almost instant. Although it’s still better than the previous 1.78 and/or 1.79.

Additional info: I downgraded VSC to v1.77.3 (“GitLens” extension is downgraded to 13.5.0 also because its latest version is not compatible with VSC v1.77.3) and everything is much better. Sometimes staging and un-staging files are still slow a little bit but acceptable.

I’m not based in the US and have this problem as well. Definitely related to source control. Downgrading to v1.77.3 seems to have solved it for now.

edit: Solution: I found that there was a conflict between source control and my cloud drive on the desktop (in my case it was Google Drive). I had my code stored in those synced folders and I believe the versioning between both source control and the cloud drive created somewhat of an infinite loop. Uninstalling Google Drive desktop (i.e. taking my code out of the the synced cloud drive) solved the problem for me.

I have had these problems for years on both Windows + MacOS with VScode. But Jetbrains’s products never got this problem.

I think Vscode devs can’t reproduce/fix this problem because they almost live in the US. So connection to GitHub is very fast => they never encountered this problem.

But JetBrains Headquarters is in Czechia, and they suffered the same problem too => It is easy for them to solve it.

I am noticing a similar issue. I am running WSL2 on Windows 10 Enterprise Version 21H2

$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.3 LTS
Release:        22.04
Codename:       jammy
$ code --version
1.86.2
903b1
x64

I have uninstalled GitLens v14.8.2.

When I change a file in the editor and save it the integrated Git doesn’t track the file unless I click the refresh button.

Sorry! After uninstalling GitLens I forgot to restart VSCode. This fixed my similar issue.

Running VSCode 1.84.2 on Ubuntu and seeing the same thing - source control features are ridiculously slow recently. This includes the built-in git features (staging, unstaging, committing, pushing, etc. As well as extensions that tie into the git environment, like gitlens.

Version: 1.84.2
Commit: 1a5daa3a0231a0fbba4f14db7ec463cf99d7768e
Date: 2023-11-09T10:50:47.800Z
Electron: 25.9.2
ElectronBuildId: 24603566
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Linux x64 6.2.0-36-generic snap

As suggested by @gh-egs-vividcloud above, downgrading to 1.77.3 does bring back git performance to normal. Unfortunately though it does require downgrading a lot of extensions with it.

I have the same problem

Version: 1.83.1 (user setup)
Commit: f1b07bd25dfad64b0167beb15359ae573aecd2cc
Date: 2023-10-10T23:48:05.904Z
Electron: 25.8.4
ElectronBuildId: 24154031
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Windows_NT x64 10.0.22621

This is an example from my Git output, certain commands are taking a very long time. git push origin master:master [69043ms]

I am also seeing this issue on Windows 11 Home 22H2 (build 22621.2283).

$ code --version
1.83.1
f1b07bd25dfad64b0167beb15359ae573aecd2cc
x64