Let's say that Alice has started a project under a permissive license, e. g. MIT. Then Bob forked it and added some features. Now the project has two copyright holders, Alice and Bob. Then Bob decided to continue the development under a copyleft license, e. g. GPLv3 and fixed some bugs. Then Bob decided to move the project back to a permissive license, MIT.

The question: could Bob do this without consent of other copyright holders for the project, namely Alice? Intuitively he should have such right. But Alice's and Bob's work might not be dissectable within the project. Are there terms in copyleft licenses that control such situations?

1 Answer 1


For the specific example you've quoted, I believe this is possible (though of course IANAL/IANYL).

Bob, being the rightsholder for all the stuff he's added, is not bound by the licence he's decided to use with respect to his additions. He can distribute his own changes independent of Alice's codebase under any licence he chooses.

Alice's original codebase is presumably still happily available from Alice, under its single, original licence (MIT). Even if it's not, Bob presumably has his own copy, which he received under the terms of the MIT licence.

Bob can therefore recombine his changes with Alice's original code to produce a (new) thing that's never been distributed under GPL, without violating anyone's copyright. He may also distribute this under, say, the MIT licence, without violating anyone's copyright, or the licence terms on Alice's code.

If someone other than Bob has contributed to Bob's fork, either their changes must be abandoned or their consent obtained. Anyone who has an existing copy of Bob's project under GPL (with the requirements of the MIT licence applying in addition to those of the GPL, to Alice's code) can continue to use it under those terms.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.