What's the best way to version large amounts of binary files, say audio and video files? Git doesn't seem like it's really designed to handle large amounts of binary files.
The other issue is that content produces don't necessarily want to learn how to use a developer's tool like Git.
Has anyone found a good binary versioning companion for text based versioning systems like Git? What do game developers usually do? Is content just not versioned in many cases? Do centralized SCM's work better in this case?
Most version control systems that do handle binary assets have to store them separately. Helix Core stores binaries alongside source code in the same depot. You can easily find and update the file you need, allowing you to streamline your build process.
Git is not especially bad at handling binary assets, but it's not especially good either. By default, Git will compress and store all subsequent full versions of the binary assets, which is obviously not optimal if you have many.
Adobe's Version Cue is a VCS with good integration in adobe suite and has a serviceable standalone tool. I won't recommend any version prior to CS3, though, because it just wasn't feature complete.
That said, I use git for version control on media files anyway. git just doesn't care what the format is, although it can't merge most binary formats when they do diverge. the builtin gui (git-gui
and gitk
) interfaces for git are actually quite nice, once you know your way around them.
I'm versioning my binary files in Git, and before that I used Subversion. However, I really cannot recommend either of those, especially on Windows and/or 32 Bit systems.
In game development, Perforce seems to have an almost 100% market penetration, specifically because of its handling of binary files.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With