Как конвертировать git-репозиторий в git-lfs, одновременно разархивируя двоичные файлы?
У меня есть git-репозиторий, который содержит почти исключительно двоичные файлы (по одному 4 ГБ BLOB на каждый коммит). Из-за того факта, что git не очень нравятся большие файлы, я сжимаю файл перед тем, как его добавить, и добавляю только.zip (я понимаю, что внутри git все равно использует сжатие для хранения больших двоичных объектов, но git обычно жаловался, если я добавил файл 4GB Также смотрите Git с большими файлами)
Теперь я хотел бы перейти на lfs - использование lfs и дедупликации на основе блоков в файловой системе двоичных файлов намного эффективнее, чем архивирование каждого файла.
Есть ли элегантный способ избежать использования git filter-branch
? С помощью git lfs migrate
собирается конвертировать репо как есть, и мне все равно придется использоватьgit filter-branch
распаковать файлы позже (но возможно это будет быстрее с lfs). Ни git-lfs-migrate, ни утилита bozaro, ни bfg-repo-cleaner не имеют возможности выполнять преобразование "на лету", но, вероятно, это можно взломать.