Git автоматически запускает сборку мусора :
• Если в хранилище слишком много незакрепленных объектов
• Когда происходит отправка в удаленный репозиторий
• После некоторых команд, которые могут ввести много незакрепленных объектов
• Когда срок действия некоторых команд, таких как git reflog, истекает, они явно запрашивают
И, наконец, сборка мусора происходит, когда вы явно запрашиваете ее
используя команду git gc. Но когда это должно быть? Там нет твердого
ответьте на этот вопрос, но есть несколько хороших советов и лучших
практика.
Вы должны рассмотреть запуск git gc вручную через несколько
ситуации:
• Если вы только что завершили ветку git filter. Напомним, что
ветвь фильтра переписывает много коммитов, вводит новые и оставляет
старые на реф, которые должны быть удалены, когда вы удовлетворены
с результатами. Все эти мертвые объекты (которые больше не являются
ссылка, так как вы только что удалили одну ссылку, указывающую на них)
должны быть удалены через сборщик мусора.
• После некоторых команд, которые могут ввести много незакрепленных объектов. это
например, может потребоваться большая перебазировка.
И с другой стороны,
когда стоит опасаться за сборку мусора?
• Если есть осиротевшие реферы, которых вы можете восстановить
• В контексте git rerere и вам не нужно сохранять
разрешения навсегда
• В контексте только тегов и ветвей достаточно, чтобы вызвать
Git, чтобы сохранить коммит навсегда
• В контексте поиска FETCH_HEAD (прямой URL-адрес через
git fetch), потому что они немедленно подлежат сборке мусора
• В контексте только тегов и ветвей достаточно, чтобы вызвать
Git, чтобы сохранить коммит навсегда
• В контексте поиска FETCH_HEAD (URL-адрес прямого поиска через
git fetch), потому что они сразу же подвергаются сборке мусора