I'm new to licenses and don't really understand the difference between the license choices on GitHub.

If you license your own work under the GNU General Public License, does this mean you wouldn't be able to use the code again in a closed source commercial product you own?


2 Answers 2



If you own the code, you can dual-license it, or do whatever you want with it.

Just be sure you own all of it - i.e. that you haven't incorporated someone else's copylefted code into it.

When you write code, you automatically have the copyright on it. It's then up to you how you license that for use by others. The only restriction you really have is that you can't revoke a license once you have issued it.

  • 1
    I wonder about revoking. One is not obligated to keep hosting or distribute a certain revision of source code. If the owner/copyright holder were to re-license the entire code base and discontinue distributing older revisions wouldn't it nearly mean revoking a license? I say nearly since those who have access to the source will be free to use it with whatever license that particular revision was released under. Jun 8, 2016 at 13:16
  • 2
    Exactly. You can stop distributing it at any point, but you can't revoke it from those who have already received it. It's also worth noting that projects on GitHub that change their license will usually find themselves forked and the license change commit reversed ;)
    – Tim Malone
    Jun 8, 2016 at 19:22

If you own the code, you can do what you like with it.

In other words, you can absolutely licence under GPL and implement it into a commercial product you own.

The only real gotcha is that if you use anything you've not written to implement your code, then if this uses a licence such as GPL, this could potentially contaminate your code.

A decent explanation is here: http://oss-watch.ac.uk/resources/duallicence2

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.