Gitは私にこのエラーを与えてきました
0 [main] sh (47116) C:\Users\Marcus\AppData\Local\GitHub\PortableGit_c7e0cbde92ba565cb218a521411d0e854079a28c\usr\bin\sh.exe: *** fatal error - cygheap base mismatch detected - 0x11C7400/0x1297400.
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version. The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution. Rebooting is also suggested if you
are unable to find another cygwin DLL.
0 [main] sh 42052 fork: child -1 - forked process 47116 died unexpectedly, retry 0, exit code 0xC0000142, errno 11
/mingw32/libexec/git-core/git-sh-setup: fork: retry: No child processes
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version. The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution. Rebooting is also suggested if you
are unable to find another cygwin DLL.
0 [main] sh 42052 fork: child -1 - forked process 47116 died unexpectedly, retry 0, exit code 0xC0000142, errno 11
/mingw32/libexec/git-core/git-sh-setup: fork: retry: No child processes
私が試したものは次のとおりです。
C:\cygwin
およびC:\cygwin64
からcygwinを削除して再インストールするC:\cygwin
のリベースは成功しましたが、問題は修正されませんでした。%appdata%\Local\Github\PortableGit_c7e...\.
をリベースすると、元のエラーが再び返されました。参考のために、Windows 10 64ビットを実行しています。私が見つけることができた他の唯一の質問は、私が解決策に到達することは決してないというエラーを指摘しました: リンクはこちら
Windowsを完全に再インストールする以外にどこに行けばいいのかわかりませんが、どんな助けも大歓迎です。
git-for-windows ( msys2 に基づく)からのシェルはCygwinまたはmsys2の別のインストールで実行するためのものではありません。
GitHub Desktop は、 古いgit-for-windows(2.5.3、2015年9月)を使用します
Git bashセッションの場合、CygwinやGitHub Desktopは必要ありません。
あなたが見つけることができる 最新のgit-for-windows azrchiveを解凍します :
PortableGit-2.7.0-64-bit.7z.exe
=> c:\prgs\git\PortableGit-2.7.0-64-bit
次に:
cd c:\prgs\git
mklink /J latest PortableGit-2.7.0-64-bit
set GIT_ROOT=c:\prgs\git\latest
set PATH=%PATH%;%GIT_ROOT%;%GIT_ROOT%\bin;%GIT_ROOT%\cmd;%GIT_ROOT%\us`\bin
次に、git-bash
と入力して、Linuxベースのbashセッションを起動できます。
または、通常のCMD
シェルセッションから、200以上のUNIXコマンド(curl
、cat
、xargs
、ls
、...にアクセスできます。 )。
Cygwinは不要です。
システムのWindows Defenderセキュリティセンターで 画像の強制ランダム化(強制ASLR) を無効にします。または git実行可能ファイルのASLRを除く :
Get-Item -Path "C:\Program Files\Git\usr\bin\*.exe" | %{ Set-ProcessMitigation -Name $_.Name -Disable ForceRelocateImages }
私は非常に似たような問題を抱えていましたが、Gitやcygwinの再起動も再インストールも助けませんでした。私はいつも得た:
1 [main] sh (12220) C:\Program Files\Git\usr\bin\sh.exe: *** fatal error - cygheap base mismatch detected - 0x37C7408/0x38E7408.
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version. The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution. Rebooting is also suggested if you
are unable to find another cygwin DLL.
0 [main] sh 6928 fork: child -1 - forked process 12220 died unexpectedly, retry 0, exit code 0xC0000142, errno 11
C:\Program Files\Git\mingw64/libexec/git-core\git-stash: fork: retry: Resource temporarily unavailable
「システム全体の必須ASLR」に関連するWindowsのバグと、Windows UIで使用可能な設定が適切なレジストリキーを設定していないことについて読んだ後に開始したことを理解するのにしばらくかかりました。このレジストリエントリを追加してシステムのセキュリティを強化した後、cygwin forkが壊れました。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel]
"MitigationOptions"=hex:00,01,01,00,00,00,00,00,00,00,00,00,00,00,00,00
出典: 必須のASLRの動作の明確化
その結果、git-stashは動作しなくなり、cygwinも動作しません(後でインストールしました。そのレジストリキーを再度削除すると、問題が修正されました。
再起動すると修正されました。 Git for Windowsをアップグレードしたため、このエラーが発生した可能性があります。他のクレイジーなことをする前に再起動してみてください!
同様のエラーffmpeg $ ./configure
...
License: LGPL version 2.1 or later
Creating config.mak, config.h, and doc/config.texi...
1 [main] cmp (5984) C:\Program Files\Git\usr\bin\cmp.exe: *** fatal error - cygheap base mismatch detected - 0x180326400/0x180330400.
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version. The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution. Rebooting is also suggested if you
are unable to find another cygwin DLL.
「MSYS2を使用してビルドしようとしていますが、明らかに使用できないgit分散cmp.exeファイルに誤ってフェールオーバーしています」(VonCの回答を参照).
私の場合の修正:それらを適切なMSYS2にインストールします:
$ pacman -S make
$ pacman -S diffutils # for cmp package
インストールしたMSYS2の一部のパッケージはx:\ cygwin\binと競合しているため、システム環境でMSYS2 PATHを削除するだけです