Die Git-GUI stürzt jedes Mal ab, wenn ein Repository geöffnet wird

Seit einigen Tagen wird jedes Mal, wenn ich Git GUI in einem Repository starte, diese entsetzliche Fehlermeldung angezeigt und nach dem Klicken auf OK beendet:

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.

Dies geschieht nur mit der Git-GUI und nur im Repository (alt oder neu erstellt). Gängige Befehle in Git Bash, einschließlich Commit, funktionieren einwandfrei.

Durch Deinstallieren und erneutes Installieren mit einem neueren Paket (nur geringfügige Versionsänderungen) wurde das Problem nicht behoben. Es passiert immer noch mit alten Repositorys sowie mit neu erstellten.

Auf einem sauberen Computer reproduziert sich dieses Problem nicht. Ich denke, es ist etwas auf meiner Box, aber ich kann mich nicht erinnern, etwas Lustiges installiert zu haben. Ich erinnere mich jedoch, dass ich meine Box nach einer langen Zeit ausgeschaltet habe. Vielleicht hat Windows Update dies ausgelöst. Dies würde auch erklären, warum der andere Computer nicht darunter leidet. Es sind 2-3 Monate seit dem letzten Win-Update vergangen.

Irgendwelche Ideen, wie man Licht ins Dunkel bringen kann? (Da ich es nur auf einem einzelnen Computer sehen kann, habe ich keine Lust, es beim offiziellen Tracker einzureichen, bevor ich weiß, dass es nicht die Schuld meiner / anderer Apps ist ...)

Aktualisieren Nach den ersten Kommentaren:

Wenn Sie das Hook-Skript entfernen oder umbenennen, funktioniert es?

Witzig genug, aber das Hook-Skript existiert überhaupt nicht (es sind keine Hook-Skripte vorhanden - es gibt nur * .sample-Dateien in .git \ hooks). Nicht einmal anderswo (Git-Programm-Verzeichnis usw.)

Verfolgen Sie es, damit Sie wissen, welche Befehle es ausgeführt hat - von git-bash rungit gui --trace

Leider gibt dies nichts an die Shell aus. Verhalten ist das gleiche.

Vielleicht holt ihr GDB da rein.

Ich habe es versucht, aber gdb hat nichts Nützliches ausgegeben. Ich habe jedoch keine Erfahrung mit GDB, wahrscheinlich mache ich es falsch. Ich bekam einMinGW's gdb, lief es von der Eingabeaufforderung mit git.exe als Argument und lief dannrun gui. gdb hat nichts Interessantes ausgegeben:

(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)  

Aber ich bin mir fast sicher, dass ich es falsch mache, daher sind Ratschläge mehr als willkommen :)

Stellen Sie sicher, dass Cygwin nicht installiert ist oder dass es in Ihrem PATH überhaupt nicht vorhanden ist

Ich habe Cygwin installiert (wie immer, bevor Git pleite ging). Von Cygwin habe ich nur einige * .bat-Starter und einige * .dll-Dateien im Pfad, aber ich habe mit ProcMon überprüft, dass es sie nicht berührt, und selbst wenn ich sie aus dem Pfad entferne, bekomme ich immer noch den gleichen Absturz.

Antworten auf die Frage(7)

Ihre Antwort auf die Frage