Git clone in windows much slower than in linux

Problem solved. Open command prompt as administrator and run the following commands:

netsh interface tcp show global
netsh interface tcp set global autotuninglevel=normal

netsh interface tcp show heuristics
netsh interface tcp set heuristics disabled

Do not forget to restart the computer in the end.

The cause was auto tuning was set to disabled for some reason on all my windows 10 PCs. After restart PC the speed instantly went to 8mb/s


Try and un-compress PortableGit-2.14.1-64-bit.7z.exe in (for instance) C:\git2.14.1

Then, in a CMD (not bash), type:

set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\
set GH=C:\git2.14.1
set PATH=%GH%\bin;%GH%\usr\bin;%GH%\mingw64\bin;%PATH%

In that session, your PATH will only reference Windows and Git.

Try again a Git clone, to see if the speed is still capped.

If it does, as the OP comment, then Windows networking is at fault.
That is what the OP discovered in his other question.
And that i what is explained in "window auto-tuning in Windows 10"

The Receive Window Auto-Tuning feature lets the operating system continually monitor routing conditions such as bandwidth, network delay, and application delay. Therefore, the operating system can configure connections by scaling the TCP receive window to maximize the network performance.

To determine the optimal receive window size, the Receive Window Auto-Tuning feature measures the products that delay bandwidth and the application retrieve rates. Then, the Receive Window Auto-Tuning feature adapts the receive window size of the ongoing transmission to take advantage of any unused bandwidth.

Let the default settings of Window Auto-Tuning feature be enabled. If your network uses an old router or your firewall software does not support this feature, and you are experiencing poor or no connectivity issues, only then may you disable this feature and see if it works in your favor.

As explained in Microsoft blog post:

Some of the confusion may have originated from a misinterpretation of a blog post which suggests disabling heuristics with the following command:

netsh interface tcp set heuristics disabled

Heuristics is a feature that can interfere with auto-tuning and disabling it can improve Internet speeds and in fact heuristics have already been disabled in Windows 8.1 and greater.
Auto-Tuning on the other hand should NEVER be disabled.