Нет встроенного "игнорировать по размеру".Вы можете написать программу, которая проверяет файлы, а для тех, которые превышают некоторый порог размера, обновляет .gitignore
.Очень простая версия сценария оболочки для поиска «больших файлов»:
find . -name .git -prune -o -size +100M -print | cut -c3-
(cut -c3-
отбрасывает ведущий ./
, который печатает find
).
Вы можетепропустите эти имена через git check-ignore
, чтобы увидеть, не были ли они уже проигнорированы, и, если нет, добавьте их в .gitignore
:
[find expression as above] |
while read -r name; do
git check-ignore -q "$name" || printf '%s\n' $name >> .gitignore
done
Обратите внимание, что это предполагает, что сам файл .gitignore
не станет настолько большимкак вызвать проблемы.В противном случае обязательно удалите .gitignore
как игнорируемый файл, даже если .gitignore
превышает пороговое значение вашего размера, например:
find . -name .git -prune -o -name .gitignore -prune -o -size +$limit -print
, где $limit
- это пороговое значение размера (100M для 100 мегабайт,10 КБ за 10 КБ и т. Д.).