-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Starting from 2.24.0 git status
takes twice longer
#2467
Comments
git status
command takes twice longer.git status
command takes twice longer
git status
command takes twice longergit status
takes twice longer
This version corresponds to commit 6a3fa2a, and
... this version corresponds to commit 4db2e5c. We have snapshots for both at https://wingit.blob.core.windows.net/files/index.html. To help me help you, could I ask you to bisect a bit further? |
Hi, Looks like the problem has appeared in c25f209 This seems to be strange that the git config change causes the performance regression, but I checked multiple times and it's c25f209 indeed.
|
OK, I think I found the problem. It looks like the slowness is caused by lack of the |
This comment has been minimized.
This comment has been minimized.
Excellent analysis! FSCache was not intended to be on by default in the Portable Git, basically because the FSCache feature is still somewhat under development and I don't trust it fully. For example, we had problems in the past where FSCache would behave differently from non-FSCache for illegal file names (such as containing colons, which are mistaken for NTFS Alternate Data Streams in non-FSCache mode IIRC). It is on by default in the installer, so I guess we should switch the default in PortableGit. @DanPristupov how would you feel about changing the default in the script that generates the Portable Git, e.g. right after this line? |
(And by that, I mean: "open a PR to change the default" 😄 ) |
Enable `core.fscache` in the portable git by default as [discussed](git-for-windows/git#2467 (comment)).
Enable `core.fscache` in the portable git by default as [discussed](git-for-windows/git#2467 (comment)). Signed-off-by: Dan Pristupov <danil@danil.cz>
Enable `core.fscache` in the portable git by default as discussed at [#2467](git-for-windows/git#2467 (comment)). Signed-off-by: Dan Pristupov <danil@danil.cz>
Just created the pull request. I made a build on my machine and tested it, everything looks correct. This is my first PR here, please let me know if I missed something. |
The Portable version of Git for Windows [now defaults to turning on the FSCache](git-for-windows/git#2467) just like the installer does. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
The next snapshot's Portable Git will have the FSCache turned on by default. |
Setup
The problem affects both 32-bit and 64-bit versions.
Details
Bash
I would expect this command to take the same time as in 2.23
Hello,
Starting from 2.24.0 the
git status
command takes twice longer. The issue only occurs in the portable git version and still exists in 2.25.0 RC2.I ensured that the Windows Defender antivirus is not involved, so the problem is not related to (#2426).
I collected some data running
time git status --porcelain > /dev/null
in different git versions on the same repositoryAs far as I know the problem can be reproduced with any relatively large repository (e.g. https://github.com/facebook/react/) on any computer.
Is this a bug or an intended behavior? What can I do to help to investigate that issue?
The text was updated successfully, but these errors were encountered: