Могу ли я использовать git для управления версиями psd-файлов и проектов maya?

14

Я имел большой успех в git, управлении версиями, совместном использовании и совместной работе над моими проектами программирования, и я бы хотел сделать то же самое с проектами Photoshop .psd, Illustrator .aiи Maya. Maya, как вы, возможно, знаете, является великолепным набором для 3D-моделирования и рендеринга, но его проекты сохраняются как среда программирования, с различными каталогами для исходных изображений и текстур и тому подобного.

настройки структуры каталогов по умолчанию

Является ли отраслевой практикой использование git в этом отношении? Было бы невероятно с открытым исходным кодом 3D-фильм или 3D-файлы игры на GitHub!

Очевидно, что все файлы являются просто числами, поэтому в теории git будет хорошо, только если обновятся измененные части двоичных файлов .jpegs или maya, но думаете ли вы, что в действительности это приведет к повреждению данных и разрывам? Как я уже сказал, я бы хотел сделать то же самое с файлами Photoshop и Illustrator.

Если Git не вариант, как еще я должен создавать версии, сотрудничать и открывать проекты Maya и Adobe?

помешанный
источник
Tactic - это опция с открытым исходным кодом для управления версиями файлов 3D-ресурсов. Лично я использую Dropbox в своем рабочем процессе.
Джон
Я использую Mercurial, отлично работает для всех, кроме самых больших активов, и те должны использовать расширение Bigfiles.
joojaa

Ответы:

20

Следует иметь в виду, что git плохо работает с действительно большими репо или файлами.

Вот статья о том, почему Facebook не использует git для контроля версий. По сути, мерзавец недостаточно хорошо масштабируется.

У Github есть хорошее объяснение ограничений git здесь:

Git может обрабатывать практически любой файл, который вы добавляете в него (см. объяснение бинарного сравнения )

Photoshop

У вас не должно возникнуть проблем с использованием git для создания версии файла Photoshop. (Предполагая, что они относительно малы)

майя

Майя, вероятно, генерирует слишком большие проекты, чтобы хорошо масштабироваться в git. Особенно, если вы планируете использовать удаленный доступ, например, github или gitlab.

Большинство знакомых мне людей, использующих Maya или подобное программное обеспечение, хранят свои работы на подключенном к сети диске, чтобы поделиться им с парой соавторов. Когда версия готова к выпуску, она отображается и размещается на FTP-сайте.

Дополнительные ресурсы

Семантическая версия

/programming/540535/managing-large-binary-files-with-git

spuder
источник
Потрясающие! Что касается управления версиями в моей системе, а не совместной работы, считаете ли вы, что Mercurial будет хорошо работать для отслеживания проекта Maya? Хотя, как вы говорите, сетевые диски - это, безусловно, простой способ поделиться проектом, можно ли использовать Mercurial для совместной работы?
Старкерс
любая система контроля версий, скорее всего, не справится с большими изменениями (например, видео или 3d модели). Наилучшим вариантом будет, вероятно, пойти в старую школу и просто использовать номера версий (с семантической версией). Для справки, у сообщества блендеров та же проблема: blender.stackexchange.com/questions/671/… )
spuder
Ну ладно, честно, я пойду в школу. Что ты имеешь в виду wont handle, кстати? Сильно медленно, сбои, повреждение данных?
Старкерс
Каждый коммит будет становиться все медленнее и медленнее, а размер файла будет очень и очень большим. Я видел, как файл размером 30 МБ занимал 450 МБ из-за всех изменений.
spuder
Хм звучит как много беспокоить. Что ж, может быть, что-то появится, когда я стану достаточно опытным, чтобы возглавить команду!
Starkers
2

У меня тоже была эта проблема в течение долгого времени. Сделано немало исследований, и есть несколько вариантов для управления версиями графических ресурсов. Некоторые из них требуют вашего собственного сервера (некоторые требуют, чтобы вы специально запустили сервер Windows), а некоторые могут быть размещены на стороннем сервере. Моим любимым (хотя и не вполне удовлетворительным) был Timeline от Pixelnovel.

Там есть аналогичный вопрос здесь о временной шкале .

По моему опыту, вы должны убедиться, что все ваши соавторы используют одну и ту же версию программного обеспечения (как Timeline, так и PS / AI / Maya), более старые версии PS требуют, чтобы вы использовали более старую версию Timeline, которая не поддерживает рабочее дерево так же, как и в более современных версиях.

Я также управлял версией больших графических ресурсов с обычным Subversion (без графического интерфейса), и я обнаружил, что это не так уж и плохо, если вы согласны с использованием терминала. Конечно, такие вещи, как слияние, конфликты и т. Д. С двоичными файлами невозможны, но, по крайней мере, вы получаете аккуратное управление версиями со структурированным журналом. Кроме того, с SVN вы можете заблокировать файл во время работы с ним (что Timeline делает для вас).

Я предпочитаю не использовать git с графикой (хотя я делаю это для недвоичных файлов), и замечания spuder очень верны.

miphe
источник