使用git stash时sh.exe.stackdump

时间:2017-12-14 22:25:50

标签: windows git command-prompt

我是Git的新手并且遇到了“隐藏”命令的问题。

当我编写像“git stash”,“git stash list”,“git stash apply”,“git drop”,...这样的命令时,我总是会得到一个名为“sh.exe.stackdump”的文件:

Exception: STATUS_STACK_OVERFLOW at rip=7FFFE2A29F97
rax=0000000000001250 rbx=00000000FFFFADF0 rcx=0000000000000000
rdx=0000000180010018 rsi=0000000180271780 rdi=000000018021C490
r8 =00000000000C2790 r9 =0000000180271780 r10=00000000FFFF9000
r11=00000000FFE03190 r12=00000000FFFFACD0 r13=000000018021C490
r14=00000000FFFFAC70 r15=00000000FFFFADF8
rbp=0000000000000420 rsp=00000000FFFFAAD8
program=C:\Program Files\Git\usr\bin\sh.exe, pid 7748, thread unknown (0x3144)
cs=0033 ds=002B es=002B fs=0053 gs=002B ss=002B

Exception: STATUS_STACK_OVERFLOW at rip=7FFFE2A29F97
rax=0000000000001250 rbx=00000000FFFFACD0 rcx=0000000000000000
rdx=0000000180010018 rsi=0000000180271780 rdi=000000018021C490
r8 =00000000006A2790 r9 =0000000180271780 r10=00000000FFFF9000
r11=00000000FFE03490 r12=00000000FFFFABB0 r13=000000018021C490
r14=00000000FFFFAB50 r15=00000000FFFFACD8
rbp=0000000000000420 rsp=00000000FFFFA9B8
program=C:\Program Files\Git\usr\bin\sh.exe, pid 11624, thread unknown (0x13B8)
cs=0033 ds=002B es=002B fs=0053 gs=002B ss=002B

命令运行正常,但每次使用“stash”时删除它都很烦人。

当我尝试命名存储时,我收到此错误:

Cannot save the current index state

我该怎么办? 我正在使用Windows 10,git版本2.15.0.windows.1和Windows命令提示符

3 个答案:

答案 0 :(得分:9)

我几个月来一直遇到这个问题,我尝试了许多Internet解决方案(修复,重新安装PATH),今天终于设法解决了:问题是与Comodo Internet Security(以我的情况为Comodo防火墙)发生冲突,当我将其删除时它,错误立即消失。

我在这里找到了解决方案: https://github.com/desktop/desktop/issues/4556

以下是如何保存Comodo: https://help.comodo.com/topic-72-1-766-11485-Miscellaneous-Settings.html#shellcode_injection&_ga=2.241892802.1773408369.1525225022-41239862.1525101797

答案 1 :(得分:1)

设置简化路径后尝试相同的stash命令:

set G=c:\path\to\latest\git
set PATH=%G%\bin;%G%\usr\bin;%G%\mingw64\bin
set PATH=%PATH%;C:\windows\system32;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\

如果G(Git安装文件夹)在 Windows\System32之前设置为,则将从默认的Windows上选择Git中的查找。

然后去你的回购,再试一次。
但请务必使用git version 2.15.1.windows.2

答案 2 :(得分:0)

我一直为此苦苦挣扎。当我尝试在安装在64位Windows Server OS上的Windows 64位Git上编写任何类型的服务器端挂钩时,都会遇到以下异常。我通过修改VonC提到的Path变量的顺序来修复它。请注意,您需要注意该命令,因为我注意到使用Windows Process Explorer(可以下载),sh.exe有时会弄乱我公司安装的Anti-Virus,因此请尝试使用该命令

remote:       0 [main] sh 2288 D:\git\installation\Git-2.19.1-64-bit\usr\bin\sh.exe: *** fatal error - add_item ("\??\D:\git\installation\Git-2.19.1-64-bit", "/", ...) fa
iled, errno 1
remote: Stack trace:
remote: Frame        Function    Args
remote: 000FFFF9BC0  0018005E0DE (0018025366A, 00180230C39, 00600010000, 000FFFF8B40)
remote: 000FFFF9BC0  001800468F9 (000FFFFAC12, 000FFFF9BC0, 00000000000, 00000000000)
remote: 000FFFF9BC0  00180046932 (000FFFF9BC0, 00000000001, 00600010000, 675C3A445C3F3F5C)
remote: 000FFFF9BC0  001800CD2CB (00000000000, 00040000024, 00000000000, 00000000000)
remote: 1D4881AD919ABD9  0018011BF95 (001800B463C, 00000000000, 00000000000, 00000000000)
remote: 000FFFFCCD0  00180046EF3 (00000000000, 00000000000, 00000000000, 00000000000)
remote: 00000000000  00180045A03 (00000000000, 00000000000, 00000000000, 00000000000)
remote: 000FFFFFFF0  00180045AB4 (00000000000, 00000000000, 00000000000, 00000000000)