Exactly. But the corporations do it because it benefits them more than starting from scratch. They should release all changes to the central repository for all to consume as part of the agreement to get the benefit of the already created software. Not hold onto the patches to give them to their customers and people who pay them with their personal information.


But why are the patches kept separate at all. Especially if it’s a copyleft licensed code they’re patching. Many of those require release of the code. And the spirit of that was to make companies who profit off of the code release anything they add as they add it. Otherwise, they’re welcome to instead of taking open source code and patching it, creating closed source code from scratch without using any of the code from the open source version and selling that. It’s very simple. The license says, you want this code, you’re welcome to it, but release any fixes or improvements you make do we all benefit, not just developers, but users all benefit. If they keep it locked up, even if they release it as a patch that’s not accessible to the large majority of users, then it’s violating the spirit if in some cases not the letter of the license.