-
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
[SOLVED in v2.47.0(2)] v2.47.0 Git hangs on fetch #5199
[SOLVED in v2.47.0(2)] v2.47.0 Git hangs on fetch #5199
Comments
To make this example a little more complete, could you describe from where you are fetching? Is it github.com, a self-hosted |
It's a hosted gerrit 3.8 server. The fetch is small, took a few seconds after I downgraded to 2.46. I can try to disable sideband tomorrow. |
Latest update: Now it clones okay... without any local env modification... Okay again it just happened. I tried to clone my https://github.com/jfcherng/copilot-node-server . It seems to alway hang if I clone Update: It still hangs with
It just hangs on
|
Ah right, my case was ssh too. |
We are having this same problem with SSH on multiple machines that upgraded to the latest 2.47.0. All clones over 1mb from Gitlab are failing, the Git window just freezes at random points. |
Does it work if you copy the |
In my case, no. |
How about copying over |
Yes, that's the culprit. I tried in a fresh portable build. No need to replace |
I feared as much. There is a rather big jump in the MSYS2 runtime upgrade between Git for Windows v2.46.2 and v2.47.0. And MSYS2 runtime issues are notoriously hard to fix. You wouldn't happen to have a good reproducer that other people might be able to use, would you? I am afraid that |
A git pull from a azure repo consistently hung for me today until i reverted to 2.46.2
the trace suggests it can collect branches/tags and such before it hangs `> git pull nothing after this` |
I'm having the same issue too with the move from
I am working with my organization's GitLab repo over ssh. |
I was able to reproduce the failing clones and have a workaround:
or
This configures Git to use the SSH agent built into Windows instead of the OpenSSL-based one provided by MSYS2. |
Same here. @derrickstolee Solution helped 👆 |
Can Confirm this might be related to the |
I can confirm, I thought it was specific to my repo only, but using an example provided at https://github-debug.com/ GIT_TRACE=1 GIT_TRANSFER_TRACE=1 GIT_CURL_VERBOSE=1 git clone [email protected]:github/debug-repo /tmp/debug-repo-ssh causes the SSH connection to freeze Tip The possible workaround is to temporarily switch from git remote set-url origin 'https://<repo-url>' |
After installing Git-2.47.0-64-bit.exe the git commands clone and fetch also hang on my machine. Here is an example of this problem:
Now nothing happens anymore.
Here comes the System Info section of the text file generated by the command git bugreport:
After executing the setup file Git-2.46.2-64-bit.exe and accepting the downgrade warning the command git clone worked well again:
|
Its an issue with the latest MYSYS2 update they did |
If it helps, here are more configuration details of my machine:
If I use the HTTPS URL instead of the SSH URL to clone the repository, then the command git clone even works with the new version 2.47.0.windows.1. |
After update to 2.47 I get the same issue when trying to use git clone using ssh. It hangs indefinatelly and i have to terminate the command using ctrl+c resulting in "unexpected disconnect while reading sideband packet". After rolling back to 2.46 it works fine. |
For reference, I came across this issue from mutagen-io/mutagen#511 : I don't know what kind of reproduction project you need, but our use case is just a virtualbox VM and trying to sync something with mutagen |
I can reproduce the issue, and am bisecting now. Experience suggests that it might take a couple of days to get to the bottom of this, so please have patience. |
It was reported in git-for-windows/git#5199 that as of v3.5.4, cloning or fetching via SSH is hanging indefinitely. Bisecting the problem points to 555afcb (Cygwin: select: set pipe writable only if PIPE_BUF bytes left, 2024-08-18). That commit's intention seems to look at the write buffer, and only report the pipe as writable if there are more than one page (4kB) available. However, the number that is looked up is the number of bytes that are already in the buffer, ready to be read, and further analysis shows that in the scenario described in the report, the number of available bytes is substantially below `PIPE_BUF`, but as long as they are not handled, there is apparently a dead-lock. Since the old logic worked, and the new logic causes a dead-lock, let's essentially revert 555afcb (Cygwin: select: set pipe writable only if PIPE_BUF bytes left, 2024-08-18). Note: This is not a straight revert, as the code in question has been modified subsequently, and trying to revert the original commit would cause merge conflicts. Therefore, the diff looks very different from the reverse diff of the commit whose logic is reverted. Signed-off-by: Johannes Schindelin <[email protected]>
Okay, I have a fix in hand: It seems to be a regression in Cygwin v3.5.3, and while I am not completely happy about the extent to which I understand what is going wrong, it seems safe enough to revert to the working behavior (even if it should not completely reflect how Linux would behave in the same situation). Y'all, could I ask you to download the |
@orgads I hope that the updated title is sufficient. |
Fix the significant perf regression for vcpkg jobs by switching to the MSYS2 shell environment from Git for Windows. This env is already used for old-mingw-w64 job that remained unaffected by this issue. The issue began with the windows-runner update 20241015.1.0. It bumped Git for Windows from Git 2.46.2.windows.1 to Git 2.47.0.windows.1. GfW bumped its MSYS2 components, including `msys-2.0.dll`. That's Cygwin code, which may have contributed to this. Pipes were involved and `runtests.pl` relies on pipes heavily in parallel mode. (The issue was not seen with parallel tests disabled, in retrospect.) This is useful as a permanent solution too. It drop GfW as a dependency and makes Windows jobs use one less shell/env flavour. Long term it might help to use native Windows Perl to avoid the MSYS layer completely, if there is a way to make that work. Assortment of possibly related links: https://cygwin.com/pipermail/cygwin/2024-August/256398.html cygwin/cygwin@f78009c cygwin/cygwin@7f3c225 actions/runner-images#10843 git-for-windows/git#5199 git-for-windows/msys2-runtime#75 git-for-windows/msys2-runtime@7913a41 git-for-windows/msys2-runtime@555afcb cygwin/cygwin@1c5f4dc Follow-up to c33174d #15364 Follow-up to 1e03059 #15356 Closes #15380
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
What's the right way to update this in a github-hosted runner? The following workflow step fails with "Error: Process completed with exit code 2.". I experience similar problems with - name: Update git for windows
if: runner.os == 'Windows'
run: git update-git-for-windows --yes
shell: cmd
|
I had success with this: - name: Install git for windows
if: runner.os == 'Windows'
shell: pwsh
run: |
Invoke-WebRequest -Uri "https://github.com/git-for-windows/git/releases/download/v2.47.0.windows.2/Git-2.47.0.2-64-bit.exe" -OutFile "${{runner.temp}}/git-for-windows.exe"
Start-Process -Filepath "${{runner.temp}}/git-for-windows.exe" -ArgumentList @("/VERYSILENT","/NORESTART","/NOCANCEL","/SP-","/CLOSEAPPLICATIONS","/RESTARTAPPLICATIONS","/o:PathOption=CmdTools","/o:BashTerminalOption=ConHost","/o:EnableSymlinks=Enabled","/COMPONENTS=gitlfs") -NoNewWindow -Wait I still have no idea why |
workaround for bug in GHA which causes hg to hang on ssh remotes. actions/runner-images#10843 git-for-windows/git#5199
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
I can confirm, that this fixes also my problem with |
Thanks for releasing this as version! I wouldn't have found this bug report as easily otherwise. My colleague and me stumbled on this bug but first suspected changed firewall policies as root cause. During debugging I upgraded git, and the bug was gone. Regarding your question why people rather do a downgrade: I use a package manager (chocolatey) for software like git. Doing a downgrade is an one liner. Using a snapshot from somewhere and clicking through the installer is more work. |
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
At the moment, the Git maintainer is on vacation. While there _is_ an interim maintainer, it seems as if v2.47.1 will need to wait for "the end of the month". However, I do not have the luxury of waiting for the end of the month, as #5199 is stacking up comments relating various degrees of upset over the lack of a new Git for Windows version that fixes fetches/pushes via SSH. To make it truly worth the effort, let's integrate a couple of topics that have been integrated into upstream Git's `master` and `next` branches in the meantime, topics I consider important enough to be fast-tracked into a new Git for Windows version, since we already have the need for one: - 53d9f27 Merge branch 'jh/config-unset-doc-fix' Fixes incorrect documentation - a89881e Merge branch 'js/doc-platform-support-link-fix' Fixes broken links in the documentation - 784986f Merge branch 'jk/fsmonitor-event-listener-race-fix' CI-only: fixes 6h timeouts in the `osx-*` jobs - 59bf8d2 Merge branch 'ps/cache-tree-w-broken-index-entry' into next Fixes segmentation faults e.g. after a checkout failed due to invalid filenames and there is now a half-valid Git index - ffd5653 Merge branch 'pb/clar-build-fix' into next I suspect that this might cause some flakiness in (parallel) CI builds, even if I have not personally noticed those flakes. - fe0f4bc Merge branch 'db/submodule-fetch-with-remote-name-fix' into next Seems like a bug fix submodule users might want - 6860bff Merge branch 'sk/msvc-warnings' into next This _should_ only affect builds with MS Visual C (which Git for Windows does not use for the official builds), it's still a good idea to do, if only to align with upstream Git's code.
It was reported in git-for-windows/git#5199 that as of v3.5.4, cloning or fetching via SSH is hanging indefinitely. Bisecting the problem points to 555afcb (Cygwin: select: set pipe writable only if PIPE_BUF bytes left, 2024-08-18). That commit's intention seems to look at the write buffer, and only report the pipe as writable if there are more than one page (4kB) available. However, the number that is looked up is the number of bytes that are already in the buffer, ready to be read, and further analysis shows that in the scenario described in the report, the number of available bytes is substantially below `PIPE_BUF`, but as long as they are not handled, there is apparently a dead-lock. Since the old logic worked, and the new logic causes a dead-lock, let's essentially revert 555afcb (Cygwin: select: set pipe writable only if PIPE_BUF bytes left, 2024-08-18). Note: This is not a straight revert, as the code in question has been modified subsequently, and trying to revert the original commit would cause merge conflicts. Therefore, the diff looks very different from the reverse diff of the commit whose logic is reverted. Signed-off-by: Johannes Schindelin <[email protected]>
UPDATE: THIS ISSUE WAS FIXED
please upgrade to v2.47.0(2) or later, it fixes this issue.
Setup
defaults?
Details
Git Bash
Minimal, Complete, and Verifiable example
this will help us understand the issue.
It should be done successfully after a while.
It sometimes hangs. I see the following spawned process, which doesn't use any CPU, and doesn't terminate:
The output is:
The text was updated successfully, but these errors were encountered: