The file is a docker image, which has been exported with docker save.
To recreate this:
Take a docker image, export it:
docker save IMAGE > docker_image.tar
gzip docker_image.tar (in my case, the file is about 82MB)
Upload it to:
Include it in a resin Docker file:
RUN curl http://some-web-server/docker_image.tar.gz > /docker_image.tar.gz
Push the project - obviously, the delta will be the new tar.gz file.
Make a small change to the original docker image (e.g. change a text config in the image), and rebuild the image. Then repeat the steps above. In my case, the delta generated was as so:
[Info] Pulling old image for delta generation
[Success] Cached image pulled in a few milliseconds
[Info] Generating delta for faster device updates
[Success] Delta generated in 21 seconds; size: 80.97 MB
As I mentioned, when I tried it with xdelta3, on the same two files, the delta was less than 1 KB.
As an aside: I’m doing it this way with large file, rather than pushing them via git, as I have the feeling that every time I push these kind of monster files into git, a unicorn loses its horn. For example, I did it yesterday straight into git, and 2 minutes later there was a builder outage. Coincidence?