Git for windows停止工作

时间:2014-07-14 10:22:13

标签: windows git powershell

就在一夜之间,我的GIT for Windows在每个存储库中停止工作。

每个git操作都以一个对话框结束,该对话框说“Git for Windows已停止工作”#39; (无论是来自GIT bash,PowerShell还是SourceTree):

 /c/Projects/Github/SignalR (master)
$ git pull upstream master
remote: Counting objects: 15, done.
remote: Compressing objects: 100% (14/14), done.
fatal: write error: Invalid argument
fatal: unpack-objects failed

我已经完全重新安装了GIT,删除了所有凭证助手,(最新版本,1.9.4),删除了我的.gitconfig文件,删除/重新安装了git扩展,没有任何帮助。

事件查看器仅提到ntdll.dll中的错误:

Faulting application name: git.exe, version: 1.9.0.0, time stamp: 0x5399b485
Faulting module name: ntdll.dll, version: 6.3.9600.17114, time stamp: 0x53648f36
Exception code: 0xc0000005
Fault offset: 0x0003ffc5
Faulting process ID: 0x2228
Faulting application start time: 0x01cf9f49e1a5842c
Faulting application path: C:\Program Files (x86)\Git\bin\git.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report ID: 1f536891-0b3d-11e4-833c-6003089821b1
Faulting package full name: 
Faulting package-relative application ID: 

我从来没有安装任何新的Windows更新,因为它工作得很好......

任何想法可能会突然造成这种情况?

2 个答案:

答案 0 :(得分:6)

我最近一直在讨论这个问题,并对此次崩溃进行了深入研究。

Process Monitor跟踪git.exe的启动序列后,我注意到文件AirfoilInject3.dll正在挂起启动过程。

在预感中,我通过从注册表值HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs中删除它来禁用它,一切都恢复正常。

AirfoilInject3.dll是AirFoil" Instant On"的一部分。特征。这可能是您崩溃的根本原因,如果您偶然使用AirFoil(它可能更安全,更容易通过AirFoil直接禁用此功能而不是破解注册表)。如果没有,也许通过Process Monitor的类似跟踪将产生更多的探索路径。

答案 1 :(得分:2)

您的环境中必定会发生一些变化:

无论哪种方式,首先尝试:

  • release zip file 解压缩的msysgit(无设置)
  • 一个简化的PATH,仅包括最小和所述unzippped git

然后看看它是否效果更好。