4

когда я хочу что-то сделать: добавить, удалить, вытащить, нажать в github, у меня просто есть эта ошибка в моем терминале

Заранее спасибо!

  selnaz:iOS-Tidinfo Lnaz$ git add .
  error: cannot fork() for status: Resource temporarily      unavailable
  fatal: Could not run git status --porcelain
  fatal: git status --porcelain failed
  fatal: git status --porcelain failed
  fatal: git status --porcelain failed
  fatal: git status --porcelain failed
  fatal: git status --porcelain failed
  fatal: git status --porcelain failed

Редактировать:

selnaz:iOS-Tidinfo Lnaz$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 256
pipe size            (512 bytes, -p) 1
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 709
virtual memory          (kbytes, -v) unlimited  

Edit2

selnaz:iOS-Tidinfo Lnaz$ ps xfu | wc -l
ps: illegal option -- f
usage: ps [-AaCcEefhjlMmrSTvwXx] [-O fmt | -o fmt] [-G gid[,gid...]]
      [-u]
      [-p pid[,pid...]] [-t tty[,tty...]] [-U user[,user...]]
   ps [-L]
   0

2 ответа2

4

Системный вызов fork() должен завершиться ошибкой (с этой ошибкой), только если запущено слишком много процессов. Смотрите man 2 fork для подробностей.

Перезагрузка должна решить проблему.

Я предполагаю, что, возможно, существует много процессов, которые не полностью завершены при отладке приложения для iOS.

Выполнение приведенной ниже строки покажет три самых больших числа процессов, выполняющих одну и ту же команду (и как процессы могут выполнять эти команды), чтобы указать, какая команда использует все процессы:

ps -efwww | awk '{print $8}' | sort | uniq -c | sort -n | tail -3
2

У меня была эта проблема только сейчас. Это произошло из-за повреждения в моем каталоге git после копирования его на диски. Git - это комбинация небольших утилит Unix, разветвляющих друг друга Запуск git status приводил к тому, что git шел по спирали вниз в бесконечную рекурсию процессов, выходя за пределы процессов моей системы ("максимальное количество пользовательских процессов" в ulimit).

В моем конкретном случае у меня были подмодули, которые включали жесткую ссылку на родительский репозиторий git, поэтому удаление подмодуля и повторная инициализация устранили мою проблему.

Вы также можете попробовать сделать git-клон вашего хранилища где-нибудь еще.

Другим более радикальным вариантом будет копирование каталога .git и очистка всего, кроме пакетов, объектов и ссылок. Вы можете сохранить рабочее дерево, скопировав его снова после того, как репозиторий git снова станет нормальным.

Удачи!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .