3 ms·
Can Git be made to handle binary files as nicely as [Dropbox](http://getdropbox.com/ http://getdropbox.com/) does? On [one](https://www.getdropbox.com/tour#3 h
by vdm 18y ago
Can Git be made to handle binary files as nicely as [Dropbox](http://getdropbox.com/ http://getdropbox.com/) does?
On [one](https://www.getdropbox.com/tour#3 https://www.getdropbox.com/tour#3) of the pages from their tour, it shows how if you save a 10 MB PSD to Dropbox twice, it shows you a table with a row for the original file and another row for '400 extra bytes' or whatever.
> Dropbox is also smart with how it tracks changes to files. Every time you make a change, Dropbox only transfers the piece of the file that changed (also known as block-level or delta sync), making it easy to work with big files like Photoshop or Powerpoint documents.
- silentbicycle 18y agoFirst off, the "block-level" sync is exactly what rsync is for. You'll probably have better results using that. (http://www.samba.org/rsync/ http://www.samba.org/rsync/) You could track a list of local file paths in git, but sync the binaries themselves with rysnc. (They complement each other well.) Tracking changes in binary files (which cannot be merged in any reasonably generic fashion) is a fundamentally different issue than tracking changes in text, particularly source code. Git is designed to do the latter. While you can use it to track changes in binaries, merging doesn't make sense anymore, and hashing / scanning big binary files for changes is significantly slower. (A bunch of images generally won't matter, but I wouldn't use it to track, say, video, or large database dumps.)