4 ms·
In fairness, that’s because gitlfs’s primary purpose is to store binaries where changes in the representation don’t actually map to anything useful. There defin
by NineStarPoint 6y ago
In fairness, that’s because gitlfs’s primary purpose is to store binaries where changes in the representation don’t actually map to anything useful. There definitely is a separate use case out there for storing large files where only deliberate changes are made to the objects.
- plorkyeran 6y agoTransferring only deltas is a performance optimization, not a question of semantics. Git-lfs needs to be able to perform binary diffs to save you from uploading 2 GB every time you touch a 2 GB file, not so that it can display useful diffs.
- emerged 6y agoThe tech to detect binary diffs has existed for a very long time as well. Since the previous revision is present on disk, there isn’t any good reason why they can’t at least delta compress the network transfer and validate hash on the other end. But beyond that, what’s keeping the server from storing these deltas instead of full versions? Only argument I can think of is that server side corruption of a single file would break the chain of deltas and you’d lose every child. But surely that can be solved using some sort of redundancy.