форк git 8728: дочерний элемент -1 — умер в ожидании longjmp перед инициализацией

#git #cygwin

#git #cygwin

Вопрос:

Я пытаюсь решить следующую проблему:

 $ git pull
      2 [main] git 8728 fork: child -1 - died waiting for longjmp before initial
ization, retry 10, exit code 0xC0000135, errno 11
error: cannot fork() for rev-list: Resource temporarily unavailable
error: could not run rev-list
remote: Counting objects: 43, done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 31 (delta 22), reused 0 (delta 0)
1301582 [main] git 8728 fork: child -1 - died waiting for longjmp before initial
ization, retry 10, exit code 0xC0000135, errno 11
error: cannot fork() for unpack-objects: Resource temporarily unavailable
fatal: fetch-pack: unable to fork off unpack-objects
  

Согласно некоторому поиску в Google, мне нужно как-то запустить rebaseall из моей оболочки cygwin. Вот что я сделал:

Из sytem32/cmd.exe (меню «Выполнить» и ввод «cmd») Я выполняю:

 cd cygwinbin
dash
PATH=. rebaseall -v
  

Я получаю:

 $ ./rebaseall -v
rebaseall: only ash or dash processes are allowed during rebasing
    Exit all Cygwin processes and stop all Cygwin services.
    Execute ash (or dash) from Start/Run... or a cmd or command window.
    Execute '/bin/rebaseall' from ash (or dash).
  

хорошо, повторная попытка с использованием: C:WindowsSysWOW64cmd.exe:

 Microsoft Windows [version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Tous droits réservés.

C:WindowsSysWOW64>cd c:

c:>cd cygwin

c:cygwin>cd bin

c:cygwinbin>ash
$ ./rebaseall -v
rebaseall: only ash or dash processes are allowed during rebasing
    Exit all Cygwin processes and stop all Cygwin services.
    Execute ash (or dash) from Start/Run... or a cmd or command window.
    Execute '/bin/rebaseall' from ash (or dash).
  

Как я должен либо:

  1. Решите мою первоначальную проблему
  2. Запустите эту штуковину «rebaseall»?

Спасибо

Ответ №1:

У меня аналогичная проблема в Windows 7 (32-разрядная версия). Похоже

 $ git pull
C:PROGRA~1Gitbinsh.exe: *** 1. unable to allocate heap 0x10050000, heap_chunk_size 268435456, pid 4080, Win32 error 0
      0 [main] sh 3964 sync_with_child: child 4080(0x174) died before initialization with status code 0x1
   1064 [main] sh 3964 sync_with_child: *** child state waiting for longjmp
/libexec/git-core/git-sh-setup: fork: Resource temporarily unavailable
  

К сожалению, в моем случае перебазирование не помогло (я следовал подходу, предложенному в статье «Больше нет STATUS_ACCESS_VIOLATION на Cygwin под Windows7«)

Согласно выпуску 122 , выпуск 122, проблема определенно связана с msys-1.0.dll …

Комментарии:

1. У меня такая же проблема в Windows 7 (32-разрядная версия). Вы получили какое-либо решение для этого @AntonK? Я просто установил Git-1.9.5 для платформы Windows.

2. @med, я больше не работаю с Git, и я не могу вспомнить, решил ли я проблему и как. Согласно обсуждению вопроса 122 (он доступен в web.archive.org ) возможно, проблема была вызвана ошибкой в msysgit. Я бы ожидал, что это уже было решено.

Ответ №2:

Не уверен в проблеме с git, но ваша команда rebaseall должна работать. Скорее всего, у вас все еще запущен какой-то процесс Cygwin.

  • Ваш X-сервер выключен? Закройте его на панели задач (значок X) — если вы его там не видите, возможно, он разбился, но остался устаревшим процессом. В этом случае удалите его из диспетчера задач (найдите XWin.exe ).
  • Кроме того, если у вас запущены фоновые службы, вам нужно их остановить — см. http://cygwin.com/faq/faq.setup.html#faq.setup.uninstall-service о том, как перечислить и остановить эти