2012-03-26 4 views
1

Я использую Git на виртуальном сервере, размещенном dreamhost с памятью 2 ГБ. Я запускаю git gc каждое утро в 4 утра и постоянно на прошлой неделе, перезагрузка процесса хостинга отправляет электронное письмо с сообщением о том, что из-за того, что я потребляю более 2 ГБ памяти, они перезагрузили мой сервер, чтобы остановить процесс, который потребляет память.GIT GC использует память сервера

Размер репозитория составляет 10 ГБ. Я просмотрел подробно, прежде чем публиковать это, но есть ли файл журнала, который создает Git, который позволит мне увидеть, какой файл Git «касался», вызвавший принудительный перезапуск сервера?

ответ

1

Насколько я знаю, нет секретного метода регистрации того, что происходит. Однако с репозиторием, содержащим большие объекты, шаг git repack может захотеть использовать огромные объемы памяти даже с небольшим (ish) (то есть по умолчанию) --window и --depth.

Решение (помимо избежания глупых ограничений на VM :-)) заключается в использовании git config для установки pack.windowMemory на какой-либо подходящий предел. См. Также Repack of Git repository fails. (Я не сталкивался с этой ситуацией сам, но это, по крайней мере, кажется очевидным ответом.)

+0

tyvm torek, я ценю ваше время –

Смежные вопросы