On 9/14/07, Andrew McNabb <[EMAIL PROTECTED]> wrote: > On Fri, Sep 14, 2007 at 08:58:20PM -0600, Von Fugal wrote: > > > > Is there a reason that SCMs don't do deltas on 'binary' files? I mean > > besides the obvious they're opaque to a human. Still, it's all just bits > > to the computer anyway. So why not store deltas on binaries? > > I know git does, but I don't think most other systems do. I don't know > how well it does with them, though.
Actually, what I read was that git doesn't do deltas on any files by default. It stores whole copies of each new version, until you manually have it "pack" your repository. Then it does deltas (probably on the binary files too, I don't know). Sorry I can't find a link to explain it better, but see the git pack commands: http://www.kernel.org/pub/software/scm/git/docs/git-pack-objects.html http://www.kernel.org/pub/software/scm/git/docs/git-repack.html As far as why don't SCMs do deltas on 'binary' files, I believe it's because it would be too easy to end up corrupting certain binary files when trying to reassemble them from a list of deltas, or when performing a merge, or worse, a merge with conflicts. Also, how do you present a meaningful diff of two different versions to the end user? It's easier to throw up your hands and say, "whoa, this is a binary file that I know nothing about, I am not going to mess with it." Bryan -------------------- BYU Unix Users Group http://uug.byu.edu/ The opinions expressed in this message are the responsibility of their author. They are not endorsed by BYU, the BYU CS Department or BYU-UUG. ___________________________________________________________________ List Info: http://uug.byu.edu/mailman/listinfo/uug-list
