Hi, Maxim Cournoyer writes: > That's no longer true, as of libgit2 v1.7.0 [0]. I already have it > packaged in a branch, but I need to iron out dependent breakages. > > [0] https://github.com/libgit2/libgit2/releases/tag/v1.7.0 > > So given there's no technical reasons not to use libgit2, I'd use that > and keep the closure size down. There's still the `git gc` problem though. My opinion is that the preferred API for Git is still the UNIX one via plumbing commands. Anything else is trying to catch up to it, and then we get into this conundrum that we want to do everything in Scheme, but we're unable to do it as well as Git itself. If I had to choose, a Guile library wrapping the Git commands would be the best, especially since we're managing long-living checkouts, something libgit2 doen't seem too interested in. Best, -- Josselin Poiret