Подтвердить что ты не робот

Sh.exe.stackdump при использовании git stash

Я новичок в Git и имею проблему с командами "stash".

Когда я пишу такие команды, как "git stash", "

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".

И когда я пытаюсь назвать stash, я получаю эту ошибку:

Cannot save the current index state

Что мне делать? Я использую Windows 10, Git версию 2.15.0.windows.1 и командную строку Windows

4b9b3361

Ответ 1

Я сталкивался с этой проблемой в течение нескольких месяцев, я пробовал множество интернет-решений (исправление PATH, переустановка), сегодня мне наконец удалось решить: проблема заключалась в конфликте с Comodo Internet Security (в моем случае Comodo Firewall), когда я его удалял, ошибка исчезла сразу.

Я нашел решение здесь: 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

Ответ 2

Попробуйте выполнить ту же самую команду stash после установки упрощенного PATH:

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, то поиск из Git будет выбран по умолчанию по умолчанию.

Затем перейдите к своему репо и повторите попытку.
Но обязательно используйте git версия 2.15.1.windows.2

Ответ 3

Я боролся с этим в течение некоторого времени. Раньше я получал следующее исключение, когда пытался написать любой вид серверных хуков на моем 64-битном Git для Windows, установленном на 64-битной ОС Windows Server. Я исправил это, переработав порядок переменных Path, как упомянуто VonC. Просто обратите внимание, что вы должны быть осторожны с порядком, так как я заметил, что с помощью Windows Process Explorer (вы можете скачать это) sh.exe иногда портит установленный моей компанией Антивирус, поэтому экспериментируйте с порядком

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)

Ответ 4

Переустановка Git Bash решила проблему для меня