I'm interested in maintaining differential backup of a file (~2GB). I have Time Machine set up to cover the whole system but in case of this particular file, I would like to have a convenient backup solution that would enable me to:

  • Browse changes in the file
  • Ideally, the differential backup would take place automatically when the new file with the same name is moved to the folder

I'm not necessarily looking for this backup to take place through time machine and I would be happy for the backup to take place outside the normal backup routine. I'm more interested in maintaining the record of changes to the file then maintaining a safe copy.

  • 2
    We need more info to answer this question; like what type of file, the application, etc. This is really broad but you can boil it down to whether it is feasible or not by whether OS X can natively see what is in the file. Meaning if whatever app you used to create it, can OS X view its contents. If not, then you need to do this in app.
    – Allan
    Jul 7 '15 at 16:09
  • @Allan thanks for showing the interest. The file is produced externally and it's of size approximately 2GB. Instead of coping separate copies of the (each with different date) I would like to create a record of difference between old and new file. In time, in the folder I would have original file + difference for some date + difference for some date + difference for some other date. More or less how the TM stores backups but I want to do it explicitly, so without starting TM I could browse the content and discover two months ago this was the content only by having records of differences.
    – Konrad
    Jul 7 '15 at 21:58
  • When you say it is "produced externally," what does that mean exactly? What type of file is it? We need to know what is creating file. For instance, if it's MS Word, it can save revisions within itself, by that same token, OS X cannot natively open a Word file and save a portion of it.
    – Allan
    Jul 8 '15 at 1:16
  • @Konrad As Allan has mentioned, the type of file (in particular is it text or non-text data) will make a big difference to the solutions that are suggested.
    – mjturner
    Jul 8 '15 at 7:57
  • 1
    Binary files and diffs are not that robust - I would ask the procurer of the file what they support - if internally produced I would suggest altering the programs to allow for better backups and versioning
    – mmmmmm
    Jul 8 '15 at 12:19

The only product that I know of that can handle binary files is an open source product called xdelta.

I have used it on Linux and it has worked really well. However, there is a caveat and a big one - you must compile the application. This means you are going to have to become familiar with compiling files on OS X. This requires downloading the XCode development environment and issuing the make command.

I haven't done this on my personal mac as I keep my "dev" and "production" systems separate. At the moment, I don't have a "dev" OS X box. I personally don't recommend installing development tools on production machines, but to each their own. So....if you would like to install make on a Mac, refer to this article: Installing "make" on a Mac

Some alternatives - check out this Wikipedia page for a list of alternatives based on rsync (built into OS X). Your mileage may vary

  • xdelta is available via homebrew (brew.sh) so compilation is not that difficult.
    – Rainer
    Jul 8 '15 at 13:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .