Post

I don't even think git being licensed more permissively (eg, MPL2 or something) would be a bad thing! It would be a net positive for humanity probably. Just, like. Using AI to rewrite and relicense one of the single most-used pieces of GPLed software is actually a declaration of licensing war.

Not so much because I disagree (although I think I probably do) I'm curious as to why permissively licensing git would be a good thing?

1) broadly speaking, we want people to use git and support git. The GPL makes it more difficult to do so even for open-source projects. Basically everyone, open source or no, has to shell out to the git binary instead of using git as a library.

2) As Chacon points out, libgit2 is not a solution. libgit2 is more permissively licensed (although it's still GPL), but because of that it can't take code from git and thus has serious deficiencies in certain areas, networking in particular. This is WHY everyone has to shell out to git.

3) So the GPL makes building tooling (open or closed) around git more difficult, and fractures development between git and libgit2, and means we have to have endless licensing arguments, but at least it protects git from proprietary encroachment, right? Right?

Yeah, so. What open source license is Github distributed under again? GitLab is open-core, but it's MIT so the GPL had fuck all to do with it. Many frontend tools that depend on git aren't GPLed and some of them are proprietary (like GitButler, which has a BUSL-style revert-to-open clause).

SO, in conclusion, the GPL makes git development harder, fractures the ecosystem, complicates building good tools on top of git, and comprehensively fails in its actual mission.

There is one thing the GPL does do for git: it ensures that a company cannot create a proprietary fork of git core that supercedes the original. This is a real threat, but WE DON'T NEED THE GPL TO ADDRESS IT.

When I suggested a more permissive license, I suggested the MPL2, NOT MIT. The MPL2 is a file-based copyleft license. If you edit the code, you MUST distribute your sources. However, it is NON-VIRAL. You can create a combined work out of MPLed and non-MPLed code without MPLing the whole codebase.

This provides basically all the protections git gets from the GPL in practice (because, again, people are embedding git into combined works that aren't GPLed already via shellout), with NONE of the painful, painful downsides.

No replies yet.