Hacker News new | ask | show | jobs
by jpatters 1458 days ago
> and since neither libgit2 or go-git supports it

libgit2 already supports filters and that’s all you need to build lfs support (actually, you don’t even really need to use them if you don’t want to). Lfs itself is not a feature of git. It’s a specification that defines a protocol for replacing large files with pointers (via the use of the smudge and clean filters) and uploading said large files to another location.

Source: I am the cofounder and former CTO of forestry.io, a git backed content management system, and I implemented lfs support in conjunction with libgit2 in that product about 4 years ago.

2 comments

I just found "git partial clone" which appears to aim to replace LFS ( https://about.gitlab.com/blog/2020/03/13/partial-clone-for-m... ) but I'm unsure of it's current state ( https://www.kdab.com/native-big-file-handling-in-git/ 2021 ). Are you familiar?
Thanks for providing the extra info. I'll look into it.