Is there a good version control system for binary files? I would like to be able to use VC with things like photos and Word documents. I know some existing systems such as Subversion and Git support binary files, but I've read that they have lots of quirks and performance problems, so I'd rather use something specifically made for this purpose. My only concrete requirement is that it must not make a copy of the file for every revision; the files in question are fairly big, so I can't afford that.
-
Non version control solutions: You could try using Dropbox (http://dropbox.com) as it keeps past revisions of files you store with it. The Picasa (http://picasa.com) photo library manager keeps a history of changes made within the program without creating duplices, though you must export the images to share the changes. – donut Feb 05 '10 at 06:11
-
I edited the question to make it broader (all binary files instead of just graphics-related) because I realized I need it for things like Word documents as well. – Sasha Chedygov Feb 05 '10 at 06:36
-
3On SO is question about that - http://stackoverflow.com/questions/104453/version-control-for-binaries – MicTech Feb 05 '10 at 06:52
-
@donut Dropbox keeps only few recent versions (or it's limited by date? don't know at the moment), so not all versions are kept – Dalibor Filus Nov 09 '12 at 18:00
-
The Stack Overflow question linked in @MicTech 's comment has been deleted – Alan Evangelista Oct 27 '21 at 09:20
3 Answers
Maybe there were performance problems in older versions, but subversion is great when it comes to binary files. I believe it only stores deltas, so you should be fine with the size restriction. Keep in mind that it also depends on the formats used. If it is compressed, making a modification may have an effect on more of the file, creating a larger diff. Binary diffs aren't as optimal as text-based diffs however, but still very usable.
Subversion even claims that their diffing algorithm works equally well on text and binary files:
Note that whether or not a file is binary does not affect the amount of repository space used to store changes to that file, nor does it affect the amount of traffic between client and server. For storage and transmission purposes, Subversion uses a diffing method that works equally well on binary and text files
- 163,373
- 27
- 341
- 348
-
Hmm, interesting. I read that is has trouble with large files. Maybe I should try it and see for myself. – Sasha Chedygov Feb 05 '10 at 06:18
-
-
1Sorry for replying so late, I totally forgot I left this unanswered... Yes! It looks like it works fine. Performance isn't great but it's good enough. – Sasha Chedygov Jul 12 '10 at 08:43
You should take a look at Boar, it is a version control system made specifically for large binary files.
- 329
- 2
- 4
- 7
Not sure if it fits the price range, but there are specialized asset management systems for Graphics. I think Adobe has one (Version Cue), but there is also Alienbrain.
- 3,101
- 6
- 35
- 46
-
I have tried Version Cue, but it requires you to set up an entire server and seems really complicated for what I need. Maybe I'm wrong though. I'll check out Alienbrain too. Thanks. – Sasha Chedygov Feb 05 '10 at 06:17