Проблема заключается в следующем: я хочу управлять версией словаря (словарь реального языка). У меня есть 2 основных способа справиться с этим с помощью .git:
- Зафиксировать один гигантский 5 ГБ файл .txt в .git.
- Разбить диктовку на крошечные файлы .txt, где каждый файлсодержит только одну диктовку и весит где-то между 0kb и 1kb.
Насколько мои показания истекли, ни одна из стратегий не применима к .git
ВВ первом случае каждое изменение в большом файле заставляет меня выделять целых 5 ГБ (и это для любого изменения!). Ну, да, вы можете "сжимать" после каждого коммита (таким образом создавая дельта-файл), но это занимает время ...
Во втором случае коммиты действительно дешевы, но, размер папки .git утраивается (или где-то близко к утроению, извините, я забыл точный фактор).
Насколько я знаю, умножение папки .git связано с тем, что для каждого файла .git должно:
- Хешировать файл,но так как оригинал был крошечным, любое хэширование увеличит его размер
- создайте ссылку на файл (в основном другой файл с хешем)
- некоторые другие вещи (можете ли вы напомнить мне, какая еще причина для умноженияразмера папки .git?
Итак, вопрос в следующем: есть ли альтернатива .git, но которая предназначена для работы со многими небольшими файлами?