を開くたびにクラッシュし、私はリポジトリにGitのGUIを起動するたびに、それはこの恐ろしいエラーメッセージが表示され、私は[OK]をクリックした後に終了します。GitのGUIは、それが数日前からリポジトリ
prepare-commit-msg hook failed:
0 [main] us 0 init_cheap: VirtualAlloc pointer is null, Win32 error 487
AllocationBase 0x0, BaseAddress 0x68560000, RegionSize 0x260000, State 0x10000
C:\Program Files (x86)\Git\bin\sh.exe: *** Couldn't reserve space for cygwin's heap, Win32 error 0
You must correct the above errors before committing.
それだけ起こりますGit GUIを使って、リポジトリ(古いものや新しく作成されたもの)のときのみ。 Git Bashの一般的なコマンドはコミット作業を含め、うまく動作します。
新しいパッケージをアンインストールして再インストール(マイナーバージョン変更のみ)しても問題は解決されませんでした。それは、古いリポジトリだけでなく、新しく作成されたリポジトリでも起こります。
クリーンなマシンでは、この問題は再現されないので、私の箱には何かがありますが、面白いものをインストールすることは覚えていません。私は長い時間が経ってからボックスを消してしまったことを覚えています。だから、Windows Updateによってこれが引き起こされたかもしれません。それは他のマシンがなぜ苦しんでいないのかを説明します。
これに光を当てる方法はありますか? (私は単一のマシン上でそれを見ることができるように私はそれが私の/他のアプリのせいではありません知っている前に、私は公式のトラッカーにそれを提出するように感じることはありません...)
更新は、最初のコメントの後に:
-
あなたはフックスクリプトを削除するか、名前を変更した場合、それは動作しますか?
十分おかしいが、フックスクリプトは、実際には(何のフックスクリプトが 存在しない - .git \フックで唯一* .sampleファイルがあります)すべてに存在しません。さえ他の場所(gitのプログラム DIRなど)
-
トレースそれはそうあなたはそれが走ったコマンドを知っている - のgit-bashの実行からシェルに悲しいことに、この出力しません何も
git gui --trace
。行動は同じです。
-
おそらくそこにgdbがあります。
gdbは何も役に立ちませんでした。しかし、私はGDBで の経験がありません。おそらく間違っています。私はMinGW's gdbを得て、コマンド からgit.exeを引数として実行し、
run gui
を実行しました。 gdbが面白い何 出力しませんでした:(gdb) run gui Starting program: C:\Program Files (x86)\Git\bin\git.exe gu [New Thread 8264.0x1ce4] [New Thread 8264.0x394] [Inferior 1 (process 8264) exited with code 01] (gdb)
しかし、私は間違ったことをやって、ほぼ確信しているので、アドバイスは歓迎以上です:)
-
あなたが持っていないことを確認してください(私はいつも持っていたようにgitが壊れた前に、)cygwinのはそれが私はcygwinのインストールされていないすべての
であなたの PATHに存在しないことを少なくともインストールしますか。Cygwinから私は にいくつかの* .batランチャーといくつかの* .dllファイルしか持っていませんが、 ProcMonでチェックしました。
グーグルしようとしている人々を助け、それを願っていたのですか? '.git/hooks/prepare-commit-msg' – fork0
git-bashから' git gui --trace'を実行して、どのコマンドが実行されたのかを知るためにトレースします。 prepare-commit-hookを実行すると、実行されるコマンドが発行され、そのコマンドを参照してさらにデバッグ情報を調べることができます。おそらくそこにgdbを入れてください。 Cygwinのヒープについて不平を言うという事実は疑わしい。 cygwinがインストールされていないか、少なくともPATHには存在しないことを確認してください。 cygwinとmsysは混在しません。 – patthoyts
@patthoyts、fork0ポインタをありがとう、返信でQを更新 –