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

25012
Starkers

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

default directory structure settings

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

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

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

12
[Tactic] (http://www.southpawtech.com/tactic/) - это опция с открытым исходным кодом для управления версиями файлов в 3D-ресурсах. Лично я использую Dropbox в своем рабочем процессе. John 10 лет назад 0
Я использую Mercurial, отлично работает для всех, кроме самых больших активов, и те, которые должны использовать расширение Bigfiles. joojaa 10 лет назад 0

2 ответа на вопрос

19
spuder

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

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

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

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

Photoshop

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

майя

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

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

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

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

https://stackoverflow.com/questions/540535/managing-large-binary-files-with-git

Потрясающие! Что касается управления версиями в моей системе, а не совместной работы, считаете ли вы, что Mercurial будет хорошо работать для отслеживания проекта Maya? Хотя, как вы говорите, сетевые диски - это, безусловно, простой способ поделиться проектом, можно ли использовать Mercurial для совместной работы? Starkers 10 лет назад 0
любая система контроля версий, скорее всего, не справится с большими изменениями (например, видео или 3d модели). Наилучшим вариантом будет, вероятно, пойти в старую школу и просто использовать номера версий (с семантической версией). Для справки, сообщество блендеров имеет ту же проблему (http://blender.stackexchange.com/questions/671/does-blender-support-any-form-of-collaborative-editing) spuder 10 лет назад 0
Ах, тогда ладно, достаточно честно, я пойду в школу. Кстати, что ты имеешь в виду? Сильно медленно, сбои, повреждение данных? Starkers 10 лет назад 0
Каждый коммит будет становиться все медленнее и медленнее, а размер файла будет очень и очень большим. Я видел, как файл размером 30 МБ занимал 450 МБ из-за всех изменений. spuder 10 лет назад 0
Хм звучит как много беспокоить. Что ж, может быть, что-то появится, когда я стану достаточно опытным, чтобы возглавить команду! Starkers 10 лет назад 0
Майя файлы в основном ASCII и, как правило, не так много, кстати, я использую Mercurial joojaa 10 лет назад 0
2
miphe

I've had this issue for a long time as well. Done quite some research and there are a few options for you to version control your graphical assets. Some of them require your own server (some requires you to specifically run Windows server) and some can be hosted on a third party server. My favorite (although not completely satisfactory) was Timeline from Pixelnovel.

There's a similar question here about Timeline.

In my experience, you should make sure that all your collaborators are using the same version of the software (both Timeline and PS/AI/Maya), older versions of PS requires you to run an older version of Timeline which doesn't handle the working tree the same way as in more up-to-date versions.

I've also version controlled large graphical assets with regular Subversion (no GUI) and I found it wasn't all that bad if you're OK with using the terminal. Of course, things like merging, conflicts etc. isn't possible with binaries but at least you get a neat version management with a structured log. Also, with SVN you can lock a file while working with it (which Timeline does for you).

I prefer not to use git with graphics (though I do for non-binaries) and the points made by spuder are very valid.

Похожие вопросы