
У меня есть свежий сервер Centos 6, и я установил git версии 1.7.1 через yum. Я использую метод smart http через apache для доступа.
Когда я пытаюсь отправить данные на удаленный сервер, вот что я получаю:
$ git push origin master
Password:
Counting objects: 6, done.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (6/6), 436 bytes, done.
Total 6 (delta 0), reused 0 (delta 0)
error: unpack failed: index-pack abnormal exit
Я пробовал следующее, но ничего не изменилось:
- chown -R apache:apache /path/to/git/repository (httpd работает как apache)
- chown -R apache:users /путь/к/git/репозиторию
- chmod -R 777 /path/to/git/repository (очевидно, небезопасно, но хотелось бы исключить проблему с правами доступа к файлу)
Что я могу попробовать сделать, чтобы подтолкнуть к работе?
решение1
Это может быть похоже наhttps://stackoverflow.com/questions/4826639/repack-of-git-repository-fails. Я видел похожие ошибки, когда репозиторий большой (1-2 ГБ) и у меня заканчивается память на сервере. В частности, процесс "git pack-objects" на серверах съедает много памяти и процессорного времени.
Решения, похоже, включают переупаковку репозитория на сервере:
git repack -a -d -f --window-memory 10m --max-pack-size 20m
Или настройте конфигурацию Git на сервере, чтобы уменьшить использование памяти, например:
git config pack.windowMemory 10m
git config pack.packSizeLimit 20m
Возможно, вам придется поиграться со значениями 10 м и 20 м в зависимости от объема доступной памяти.