Hi, On Fri, Dec 11, 2020 at 3:07 PM Miłosz Kosobucki <mikom3@xxxxxxxxx> wrote: > > Hello, > > I recently looked into the partial clone functionality and how it could > be used to replace Git LFS. > > Let's say that I use partial clone where one directory is filtered out > through --filter=sparse:oid=XXX. Let's also say it's a directory with > big assets for a computer game. > > Now, as the project progresses and new versions of assets are checked > in, I'll accumulate many version of these assets as I get new versions. > I won't need them though, because most of the time I'm interested only > in the latest version. > > So my question is: is there some tool (probably similar to git lfs > prune) that will let me get rid of the blobs that I don't need anymore? I have been playing a bit with partial clone (see https://lore.kernel.org/git/CAP8UFD35kk10FpUnPpiAUzTHJbm=SJ-76OTmkTwBstGFe3Zgdw@xxxxxxxxxxxxxx/), and I started working on `git repack` and the underlying `git pack-objects`, so that `git repack -a -d --filter=...` could work. I cannot promise anything about when it will be submitted, merged, released, etc. Also I have been working on it on the server side though, where it's ok to get rid of everything that is stored elsewhere. It might not be your case, but on the client side one might want to keep the (large) blobs that can be reached directly from the tip of some branches, which might require further work. > I couldn't find information about it anywhere in the docs. I vaguely > remember a mention of something like that possibly being done in the > future in partial clone (or maybe promisor remote?) patch mails but I > couldn't find it again. Best, Christian.