-
Notifications
You must be signed in to change notification settings - Fork 29.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Git - The integrated source control (Git) is very very slow in the latest version (1.78.x) #183199
Comments
Are you using Mcafee antivirus? |
@gjsjohnmurray , no, I don't use it. |
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. |
Same thing happened to me, a simple git diff was taking ~10 seconds with the new version. I downgraded to v1.77.3 and it also fixed my issue |
I pulled some Ansible galaxy collections into my workspace (which updated a few hundred files) and the whole computer froze for several minutes. Never had this issue with previous versions of VSCode. Using Fedora Linux 38. |
I am not sure whether this is related, but GitLens started taking %100 CPU recently. I tracked the issue down to GitLens after removing all plugins and reinstalling them. Finally, I was able to discover that simply disabling/enabling GitLens was removing/reintroducing the CPU spike issue. My installation clean (since I tried to do a clean uninstall while trying to fix the issue). I am on Linux (Fedora) and I don't have Mcafee anti-virus. If it helps here is the offending process on my machine:
|
I'm not sure what the root cause of this is but this is what I observed in the last time:
Note: in VSC 1.79, staging multiple modified files is still slow a little bit (but still good enough and acceptable, just as before) -> it would be nice if it can be as fast as when I use git bash :) |
@chriscarreau, @ChristianCiach and @rafidka , maybe you should try updating VSC to the latest version (1.79) to see/check if the issue was resolved or not. If all of us are okay with the latest update of VSC, I think we can close this ticket :) |
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. |
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. Screen.Recording.2023-07-22.at.22.24.56.mov |
I'm trying to figure this out, too. I think (at least in my case) that it might relate to the number of open files. It's running a "git ls-files --stage -- " and a "git show --textconv " for each file, along with a bunch of "git cat-file -s ". After each of these operations, it's displaying millisecond counts in the 10000 range. Cutting and pasting these commands into a terminal window results in fairly quick execution, so there must be something else going on (processing the output?). The commands might make sense after a sync, though why it would go through all the files that were not touched in the pull/fetch is not clear. edit: On a commit and sync of a one line change, it's running all of these commands before pushing, and then again after. The commit is taking ~3:15, and the pull/push another ~2:30. edit the second: Closed the buttload of open files, and all those time-consuming commands were not executed during subsequent commits, pushes, and pulls. So, I'm blaming GitLens for my particular woes. |
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. |
Hey @lszomoru, this issue might need further attention. @gh-egs-vividcloud, you can help us out by closing this issue if the problem no longer exists, or adding more information. |
I confirm that this issue is still occurring.
I have performed diff using the last 4 code versions on the following code and it seems like an insidious bug perpetuating from other versions. Track this code, try to change it or anything: package string;
import java.util.HashMap;
import java.util.Iterator;
import java.util.TreeSet;
/**
* Return if string s has characters of the same order & count as t despite not containing all its letters
* Problem Link: <a href="https://leetcode.com/problems/is-subsequence/">...</a>
*/
public class IsSubsequence {
// Accepted but slow
public boolean isSubsequence1(String s, String t) {
HashMap<Character, TreeSet<Integer>> dic = new HashMap<>();
for (int i = 0; i < t.length(); i++) {
char c = t.charAt(i);
if (dic.get(c) != null) dic.get(c).add(i);
else {
TreeSet<Integer> set = new TreeSet<>();
set.add(i);
dic.put(c, set);
}
}
int currentPosition = 0;
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (dic.get(c) == null)
return false;
Iterator<Integer> iterator = dic.get(c).iterator();
boolean found = false;
while (iterator.hasNext() && !found) {
int next = iterator.next();
if (currentPosition <= next) {
currentPosition = next;
found = true;
}
iterator.remove();
}
if (!found)
return false;
}
return true;
}
// Accepted, 91.32%
public boolean isSubsequence2(String s, String t) {
if (s.isEmpty()) return true;
int sInd = 0, tInd = 0, sL = s.length(), tL = t.length();
if (tL < sL) return false;
while (sInd < sL && tInd < tL) if (s.charAt(sInd) == t.charAt(tInd++)) sInd++;
return sInd == s.length();
}
// 100% on LC
public boolean isSubsequence(String s, String t) {
if (s.isEmpty()) return true;
int sInd = 0, tInd = 0;
char[] ss = s.toCharArray(), tt = t.toCharArray();
if (tt.length < ss.length) return false;
while (sInd < ss.length && tInd < tt.length) if (ss[sInd] == tt[tInd++]) sInd++;
return sInd == ss.length;
}
public static void test() {
IsSubsequence s = new IsSubsequence();
assert s.isSubsequence("abc", "ahbgdc");
assert !s.isSubsequence("axc", "ahbgdc");
assert !s.isSubsequence("aaaaaa", "bbaaaa");
assert s.isSubsequence("leeeeetcode", "yyyyylyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyeyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyeyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyeyyyyyyeyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyeyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyeyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyytyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyycyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyoyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyydyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyeyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy");
}
} |
I am also seeing this issue on Windows 11 Home 22H2 (build 22621.2283).
|
I have the same problem
This is an example from my Git output, certain commands are taking a very long time. |
I'm having these problems as well in 1.84.0 |
I'm having this issue in win10 pro 19045.3696, with feature experience pack 1000.19053.1000.0 $ code --version |
Running VSCode
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'm also experiencing this - terminal windows are very slow to open since the last update, though they appear to work nicely enough once they've loaded. |
code --version 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. |
Same issue here on Mac Sonoma with M1 Pro. Did you find any solution? |
I have the same issue on Windows 11 code --version git version 2.43.0.windows.1 Edition Windows 11 Pro |
I've been running into the same thing on Windows 11. Since a couple of people mentioned that they saw issues connected to GitLens I tried disabling it and things work much faster. It's a shame because the GitLens adds some useful features but that seems to be what's slowing everything down. Seems like that's the place to look for the performance issues. |
I am noticing a similar issue. I am running WSL2 on Windows 10 Enterprise Version 21H2
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. |
Hi, |
I solved this by disabling IPv6 in the network adapter settings on Windows 10 & 11. This also fixed npm which was also really slow/not working. Control Panel -> Network and Internet -> Network and Sharing Centre -> Change adapter settings -> Right click on the network adapter ( |
Same issue here: Visual Studio Code
MacBook Air
Git
|
Same for me since over a week: Some git operations lasts above 10 seconds:
Version: 1.87.2 (user setup) |
It seems this issue has been fixed with:Version: 1.88.0 (Universal) I do not experience the sluggishness like in the previous comment. |
Been experiencing the same issue for a while, currently running 1.88.1 and still experience it. Running VSCode in Win11 connected to Ubuntu 22.04 instance in WSL. |
For me, uninstalling GitLens made things faster. |
same issue after upgrade. I had to switch to web storm for smooth workflow. Waiting for the fix 🤞🏻 |
I am also facing this same issue in: |
I reinstalled Git Bash from Git site on Windows (https://www.git-scm.com/). Opening the terminal via the context menu in the folder opens normally. But in VS Code, it runs for 3-5 seconds. And after each command, after they are executed, you have to wait for 5 seconds. Yesterday I was working on a project, and the terminal was open for several hours. After these few hours of work, the waiting time increased to 10-15 seconds. I also deleted it .bash_profile and .bash_history, nothing helped. How can I use Git bash terminal in VS Code without delays, as it was before? Just the other day, the waiting time began to exceed 3 seconds, which makes it impossible to continue development. ((( |
There is a known performance issue with git bash in 1.90. See the currently pinned issue. A fix is expected in 1.90.1. |
Additionally to above:
In my case it fixed performance issues mentioned in this topic. Also with source control tab. |
just disabled shell integration terminal may fix the issued it work for me |
Same here. Impossible to work with. We're getting 33426 ms and more response times.
|
I was having a similar issue here. VSCode's called In my case I could notice only the VSCode Git Console log
Turns out my repo's
That was a brand new repository, 2MB worth of data, 3 commits total to its single Then I realized, as all that log was bloat, all I needed to do was
And voila
And VSCode was back to speed. In case anybody else face this issue and, like me, ends up in this GitHub Issue, My VSCode version info:
|
I'm on 1.93.0 and just started to experience these slowdowns for the past two days when working with Rust and Burn. |
I'm still experiencing the issue with the latest version 1.94.1. I also think that the main problem is the 1ms polling of git rev-parse --show-toplevel command. Is there a way to slow this command down, so it only executes for example each 1s? |
I am having same issue in latest version 1.94 and Insider version 1.95. |
I'm experiencing this issue on the latest release version of vscode(1.95), it has taken upwards of 20 minutes to commit to the main branch and is still committing. |
the same 1.95.2 |
Same for me: It happens every time I compile (webpack.mix). Closing VS Code is the only solution to release CPU and allow the task to pursue. |
When I run du -sh .git, I get 6 GB, before and after running git gc. However, after running git gc, this problem is 100% fixed for me, and git is fast again from the lastest version (1.95.3) of vscode in WSL2 on Windows 11. |
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 (b3e4e68, 2023-05-10T14:39:26.248Z)
OS version: Windows_NT x64 10.0.22621
Modes:
Sandboxed: Yes
System Info
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
Process Info
Workspace Info
Extensions (52)
A/B Experiments
The text was updated successfully, but these errors were encountered: