3 ms·
> The world has non-text files that require version control support Which is fine, but saying that git is rubbish because it doesn't handle binary files as you
by happymellon 3y ago
> The world has non-text files that require version control support
Which is fine, but saying that git is rubbish because it doesn't handle binary files as you want it to is a bad usecase.
How version control would handle diffs between PDFs is not the same as photos, which is not the same as video. They have to be content aware for these sorts of things.
- genocidicbunny 3y agoWell, to be frank, git doesn't really handle binary files _at all_. I don't really consider treating binary files as opaque blobs of data as 'handling them'. It's more akin to throwing your hands up and saying 'fuck it, we'll treat it like the text stuff and whatever happens, happens.' Yes, over time git has gained some capability for handling binary data as delta patches, but it is so far away from anything even remotely resembling content-awareness.
- happymellon 3y agoBecause no one is driving a universal content aware diff, as far as I can tell. If you just want images then gitlab does a good enough job. https://gitlab.com/gitlab-org/gitlab-test/-/commit/2f63565e7aac07bcdadb654e253078b727143ec4?view=inline https://gitlab.com/gitlab-org/gitlab-test/-/commit/2f63565e7... How would we represent video diffs? I don't deal with video so I'm not an expert, but there appears to be people complaining without suggesting solutions.
- forrestthewoods 3y agoNot all version controlled files can be merged. That’s fine. Git sucks at working with large binary files. Perforce does not. Therefore all game devs use Perforce. A theoretical Git2 could provide Perforce-tier support for large binary files. But, imho, this would likely require dropping the D in DVCS. I would gladly trade distributed for large binary file support. Without even a moment’s hesitation. Other people wouldn’t. But I wouldn’t call their use case “bad”. Git is rubbish for my needs. It’s rubbish for a lot of needs. It’s ok at some things. Mercurial is much better at those things though.