Which version control software would be suitable for storing large video files
I want to use version controller for large files(Video files). And I want to modify files and check in many times. If I use git, it will store file content each time when I will check in. Is there any tool available which will store only the difference of Modified file so that I can save storage space.( I don't want to store full file when each time I do check in)
I have gone through git - media. It will store full content each开发者_如何转开发 time when I am doing check in. I guess git annex also will work similar to git - media.
Thanks
If you are storing binary files which change frequently ( which seems to be your case), I would recommend SVN over Git. It does store only the delta. My observation with Git has been that it doesn't handle large binary files that change frequently very well. The repo size goes up, and you spend lots of time cloning etc. This despite the packfiles, at which point git stores the delta, and gcing the repo.
Then again, remember that these are primarily designed as source code control software, and though SVN ( and Git) handles binary files, it is not really their use case.
This is going to depend on how well the system is able to represent the difference between two video files, which in turn is going to depend on how the video files are stored.
Most version control systems are able to handle binary files; they vary in how well they handle them. Some probably just give up and store each version in its entirety.
Presumably you're using some compressed format (i.e., not every pixel of every frame is stored explicitly). If you have a video X
, and you make a small change to it to produce video Y
, are X
and Y
going to have long stretches of identical byte sequences, or is the compression scheme going to scramble everything? If the former, any decent binary diff algorithm should be able to find (and not store) the identical sequences; if not, no such algorithm can do so, unless it's specifically aware of the internals of the video format.
You might actually get better results with a format that doesn't compress the data very aggressively, so it leaves something for the comparison algorithm to work on. [EDIT: This is speculation on my part; I have no actual data to back it up, but it seems like a reasonable guess.]
I know this doesn't actually answer the question, but perhaps it can provide a starting point for you or someone else.
You could simply use SVN which can handle binary files out of the box.
精彩评论