В настоящее время я начинаю использовать git для своей системы контроля версий, однако я делаю честную разработку веб-игр, которая, конечно же, требует сохранения изображений (двоичных данных). Поэтому, если мое понимание правильное, если я фиксирую изображение, и он изменяется 100 раз, если я приношу новую копию этого репо, я бы в основном проверял все 100 версий этого двоичного файла?Git и двоичные данные
Разве это не проблема с крупными репо, где изображения меняются регулярно, а начальная выборка репо в конечном итоге становится довольно большой? Кто-нибудь испытывал какие-либо проблемы с этим в реальном мире? Например, я видел несколько альтернатив, используя подмодули и сохраняя изображения в отдельном репо, но это только уменьшает кодовую базу, репозиторий изображения все равно будет огромным. В основном мне просто интересно, есть ли хорошее решение для этого.
Это ограничение по дизайну git. Это было написано для того, чтобы сделать что-то одно: управлять деревом исходников Linux, которое представляет собой почти весь текст. Git - все о различиях и слияниях, которые на самом деле не применяются к изображениям.Если ваши медиафайлы действительно большие или часто редактируются, вам лучше использовать другой механизм для хранения истории этих файлов, и если вы действительно не сотрудничаете с кодом или не делаете много ветвей, тогда вам может быть лучше не используя git вообще. – user57368
git справится с бинарными файлами, а система, которую он использует для * хранения * дельта, основана на двоичном содержимом (текстовые различия, которые вы видите в патчах, вычисляются «на лету», а не представление того, что хранится). Сказав, что xdelta для сжатых изображений вряд ли значительно сократит объем пространства. Вы могли бы сохранить все свои изображения в виде XPM или BMP: p – araqnid