git: unable to create thread: Resource temporarily unavailable

Этот пост был опубликован мной более года назад. Информация, описанная ниже, уже могла потерять актуальность, но всё ещё может быть полезна.

Ситуация: на shared-хостинге, к которому есть доступ по SSH, вертится проект. Для проекта создан локальный и удалённый git-репозитории. В локальном репозитории есть коммиты, не отправленные на удалённый.

Задача: отправить коммиты на удалённый репозиторий.

Проблема: при попытке git push возникает ошибка:

Counting objects: 5009, done.
Delta compression using up to 16 threads.
fatal: unable to create thread: Resource temporarily unavailable
error: pack-objects died with strange error

Примечание: может проявляться в связке с этой проблемой, либо после неё, либо независимо от неё.

Причина: ограничения хостинга, не позволяющие git‘у создать поток и начать отправку коммитов.

Решение 1: перейти на более дорогой тариф хостинга либо перетащить проект на отдельную VPS.

Решение 2: выполнить в консоли команду:

# Для одного проекта
git config pack.threads "1" 
# Для всех проектов на сервере:
git config --global pack.threads "1"

Подробнее об этой настройке здесь: git-scm.com/docs/git-config#Documentation/git-config.txt-packthreads

Более развёрнутый ответ по этой теме здесь: shivrajan.com/git-push-fatal-unable-create-thread-resource-temporarily-unavailable

Опубликовано
В рубрике blog Отмечено

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *