web-dev-qa-db-fra.com

sh.exe.stackdump lors de l'utilisation de git stash

Je suis nouveau chez Git et j'ai un problème avec les commandes "stash".

Quand j'écris des commandes comme "git stash", "git stash list", "git stash apply", "git drop", ..., j'obtiens toujours un fichier nommé "sh.exe.stackdump" avec ceci:

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

ou

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

Les commandes fonctionnent bien, mais il est ennuyeux de le supprimer à chaque fois que j'utilise "stash".

Et quand j'essaye de nommer une réserve, j'obtiens cette erreur: 

Cannot save the current index state

Que dois-je faire? J'utilise Windows 10, la version 2.15.0.windows.1 de Git et la commande Invite de Windows.

14
twis

Essayez la même commande stash après avoir défini un PATH simplifié:

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\

Si G (le dossier d'installation de Git) est défini sur beforeWindows\System32, la recherche dans Git sera choisie par rapport à celle par défaut de Windows.

Ensuite, rendez-vous sur votre dépôt et réessayez.
Mais assurez-vous d’utiliser git version 2.15.1.windows.2

1
VonC

Je lutte avec cela depuis un certain temps. J'avais l'habitude d'obtenir l'exception suivante lorsque j'essaie d'écrire n'importe quel type de hook côté serveur sur mon Git pour Windows 64 bits installé sur un système d'exploitation Windows Server 64 bits. Je l'ai corrigé en retravaillant l'ordre des variables de chemin tel que mentionné par VonC. Notez simplement que vous devez faire attention à la commande car j'ai remarqué qu'en utilisant Windows Process Explorer (vous pouvez le télécharger), le sh.exe gâche parfois ma société installée dans Anti-Virus, alors testez la commande

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)
0
J D