Коротка версія: це означає, що вона говорить, і якщо ви просто дозволите це закінчити, все буде добре.
Під час більшості операцій, які потенційно можуть збільшити кількість вільних (розпакованих) об'єктів у сховищі (включаючи натискання), Git викликає git gc --auto
. Якщо є достатньо вільних об'єктів (за замовчуванням, принаймні 6700), то вони будуть викликати git repack -d -l
їх упаковку. Якщо занадто багато окремих упаковок, вони також перепакують їх в одну.
Пакет - це єдиний файл, стислий дельту, що містить велику кількість об'єктів. Зберігати об’єкти в пакетах більш ефективно, але потрібен час для пакування (стискання) об'єктів, тому Git спочатку створює пухкі об'єкти, потім упакує їх у пакети раз у раз за допомогою автоматичного виклику git gc --auto
.
Якщо ви дозволите Git закінчити переукладання, це не повториться на деякий час. Це дійсно може зайняти деякий час, особливо якщо у вас багато великих бінарних об'єктів, але якщо це спрацьовує, то це знак того, що це, ймовірно, різко зменшить кількість дискового простору, зайнятого репо. Якщо ви дійсно не хочете, щоб це сталося, ви можете змінити параметр config gc.auto
. Якщо ви збільшите його до чогось набагато більшого, ніж 6700, це буде траплятися рідше, але займе більше часу, коли це станеться. Якщо зменшити його, все одно доведеться виконати поточний перепакування, але згодом це станеться частіше і закінчиться швидше. Якщо встановити його на 0, це вимкне автоматичне перепакування.
Див. man git-gc
(Під --auto
) та man git-config
(під gc.auto
) для отримання додаткової інформації.