Git push “erreur: index-pack est mort de signal 9”

J'ai vu un couple de similaire questions à cela, mais je n'ai pas été en mesure de résoudre mon problème donc je demande de nouveau.

J'ai ajouté une charge de nouveaux fichiers existants à un git-activé projet et suis en train de pousser. Quand je fais le push, il les compresse, puis les écrit, puis quand il arrive à l' %100 il échoue avec ce message d'erreur:

error: index-pack died of signal 9 332.28 MiB | 5712 KiB/s   
error: pack-objects died with strange error
error: failed to push some refs to     '<username>@<my repo location'

Choses que j'ai essayé jusqu'à présent:

  1. va les pensions de titres et de vérifier que tout est accessible en écriture, comme suggéré ici
  2. réglage de la binary -delta en option sur certains types de fichiers .gitattributes
  3. déplacement de certains dossiers (et git commettre le supprimer) en vue d'ajouter de nouveau individuellement plus tard.

Je suis un peu à court d'idées... :/suggestions? Reconnaissant pour tout conseil - max

EDIT - j'ai découvert depuis que cela est dû à dreamhost tuer la poussée due à la consommation excessive de mémoire (je l'ai fait par la copie de mon dossier app pour les pensions de serveur sur dreamhost et de faire le pousser à partir de là).

J'ai trouvé certains pages, - que de parler d'un NO_MMAP=1 option dans git pour éviter ce problème, mais ils en parlent en termes de configuration de git lorsqu'il est installé. Puis-je définir cette option dans un git installer? Fait-il partie de la config pour le git-inited application qui fait le pousser ou fait-il partie de la config pour le repo?

EDIT 2 - en suivant les instructions sur la page ci-dessus, j'ai téléchargé et fait mon propre git local binaires, avec la NO_MMAP=1 option.

J'ai fait en sorte que ceux d'avant l'dreamhost-versions installées dans mon chemin, et "qui git" montre ma version locale, so far so good. Mais, j'ai exactement le même problème.

Dois-je faire quelque chose avec mon repo pour faire de la NO_MMAP option de travail, ou est le problème, quelque chose d'autre pensez-vous?

Préservez-vous de l'accueil que vous essayez de pousser? Signal 9 est un peu fort signal à envoyer et vous avez besoin de comprendre qui/quoi sur l'hôte distant est l'envoi de ce signal à la index-pack processus. La vérification de dmesg ou le contenu de /var/log sur la machine pourrait révéler quelque chose.
Quel OS est le serveur? Vous pouvez utiliser procmon sur les fenêtres pour voir ce qui se passe sur le système de fichiers, etc., ou peut-être trouver un moyen d'utiliser strace/ltrace sur linux ou systèmes similaires?
comme une expérience, j'ai juste copié mon git dossier app vers le même serveur où le repo est, et a changé sa config pour pointer vers le local des pensions de dossier, de sorte que ma pousser a qui se passe sur le serveur et ne requiert aucune des requêtes http. J'ai obtenu ceci: Yikes! One of your processes (git, pid 7746) was just killed for excessive resource usage. Please contact DreamHost Support for details. Comme vous pouvez le voir, c'est un partagées dreamhost serveur (donc, mon collègue n'a pas en tant que tel, mais il possède cette partagés peu au moins).
Sans doute la ressource en question est la mémoire. Est-il un moyen de faire de la poussée d'utiliser moins de mémoire?

OriginalL'auteur Max Williams | 2011-11-02