13

Some time ago I have forked a project on the GitHub that used the GNU GPL v3 license. So I also had to use the GPL license in my fork.

Recently, the author of the original project changed license to the MIT. Can I now change the license of my fork to the MIT too?

1 Answer 1

20

That depends.

If you didn't make any changes in your fork of the project, you can just update your fork to include the latest upstream changes and get the license change along with it.

If the copyrights on the changes made on your fork are all owned by you, and you agree with re-licensing those changes under the MIT license, then you can merge the upstream changes into your fork, including the license change.
If, as part of your changes, you added the use of a GPL-licensed library, then you can change the license of the code in your fork, but the combination with that external library would still be governed by the GPL license.

If you don't own all the copyrights on the changes in your fork, for example you accepted contributions from someone else or you re-used code written by another, then you must get approval from those others before you can incorporate the license change in your fork. As long as you don't have that approval, you must take care that you don't merge the upstream commits of the license change into (branches of) your fork that also contain GPL-licensed content for which you don't have permission to change the license.

4
  • 14
    Philosophical question: Is it a fork if you never made any changes?
    – pipe
    Commented Jul 29, 2019 at 17:23
  • 11
    @pipe: Philosophically, no, but Github has muddled the meaning of the word "fork"... Commented Jul 29, 2019 at 17:25
  • 3
    @pipe A fork is a separate Github object. For instance, commits to one fork don't affect the other. The fact that they contain the same data doesn't mean they aren't different forks. In python, if you do a = [1] b = a, then a and b are the same object. If you do a = [1] b= a.copy() or a= [1] b=[1] then a and b are different objects, and a is b will return False. Commented Jul 29, 2019 at 18:06
  • 5
    It might be worth stating more clearly that OP may be required to re-fork their code from the current version, if the previous version still uses the previous license. Possibly the license changed because the author deleted some code or dependency that required use of GNU GPL v3.
    – dbc
    Commented Jul 29, 2019 at 18:27

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.