Нужно чтобы файлы библиотеки для приложения легко обрабатывались гитом
Есть кастомный файл библиотеки который хранит в основном информацию о векторных фигурах, в библиотеке их может быть до 10 тысяч, с этим проблем нет т.к. я не собираюсь как-то сжимать и кодировать данные
Главная проблема, что к каждому векторному рисунку прикладывается 3D модель в бинарном формате
Еще приложение должно быстро находить и выгружать только нужные фигуры, загружать весь файл библиотеки не нужно
Я думал о JSON и хранении бинарных данных просто в строке, но для обработки JSON нужно полностью его загрузить
Разбивать файл нельзя, он должен быть в виде одного файла
какие проблемы с хранением бинарных файлов в git?
эффективность в любом случае будет очень низкая
какая преследуется цель?
если работать с данными будет твоя программа (раз ты думаешь как хранить файлы) то попробуй ханить бинарники вне git но в файлах с именем - хеш от содержимого, а в гит складывай только хеш
понятно что рулить базой бинарников придется тебе самому (с другой стороны а что тут рулить - если хочешь всю историю - никогда не удаляй ничего)
Чтобы таки рулить бинарными данными через git, надо хранить "исходники" данных в тектовом формате (в том же JSON или как угодно ещё), но для реальной работы "компилировать" текстовый формат в бинарный. Т.е. всё как с программным кодом, но только с данными. Никто ведь не пытается пихать в git скомпилированные исполняемые файлы, и никакой проблемы в этом нет.
hint000, нет, вы неверно поняли, мне не нужно фиксировать изменения бинарных файлов, 3D модель (бинарная) цепляется и больше никогда не меняется, разве что может удалиться, ее даже из софта нельзя отредактировать.
Вопрос в том, какой формат будет не бинарным и при этом не будет грузить софт как по памяти, так и по процу, при выборке (т.е. позволит вытащить только нужные сроки, а не все сразу)
Гит нужен, потому что люди которые пользуется такими софтами пользуются гитом и выкладывают туда свои проекты, и очень многие сожалеют, что гит не может адекватно парсить
люди которые пользуется такими софтами пользуются гитом и выкладывают туда свои проекты
"туда" это куда?
git - это просто программа, и в рамках self hosted задача в такой постановке имеет мало смысла, IMHO. Наверное, вы имеете в виду не self hosted, а github или gitlab?