174

I have created a simple list API in C and I want to release it via Github.

Is there any way to change the license after the creation of the repository?

General Grievance
  • 4,555
  • 31
  • 31
  • 45
Chris
  • 3,619
  • 8
  • 44
  • 64
  • 4
    This question appears to be off-topic because it is about relicensing, not programming. – Wooble Nov 27 '13 at 13:07
  • 36
    @Wooble: Isn't licensing a part of programming? – Chris Nov 27 '13 at 13:17
  • 2
    @ArlaudAgbePierre: that's why I wrote it as a sidenote. The main question was about Github and whether I can change a license after the creation of the repo. – Chris Nov 27 '13 at 13:17
  • @Chris: GitHub does not have anything to say about this, this is the law. Once it's been released with a license you can't change it. This isn't a programming issue but a law issue. – Pierre Arlaud Nov 27 '13 at 13:19
  • @ArlaudAgbePierre: Ok then, thanks for pointing this out! About the help of choosing a license, I've seen [this](http://choosealicense.com/), that's why I said GPL or MIT. I think that MIT license is better for me, as it is a simple List and Queue C API that I might extend in time. – Chris Nov 27 '13 at 13:26
  • @Chris It seems to me you've made up your mind already. Then why ask? Use the GPL if you want anybody using your project to use the GPL as well. – Pierre Arlaud Nov 27 '13 at 13:30
  • 1
    @ArlaudAgbePierre: As it is the first time I am releasing software, I want to be sure that I am releasing it with the correct license for its use. Also, I am a newbie with licensing as you've realised and without asking question you're getting nowhere. Thank you for the clarification about GPL, with this, I am reassured that MIT license is best for me. – Chris Nov 27 '13 at 13:37
  • @Wooble then that's a flaw with SE/SO. – Celeritas Jul 07 '16 at 11:47
  • 1
    @Pierre Arlaud I was researching differently. If the topic creator is the license holder he has imo defenitely the right to change. He cannot yet force already cloned repos with the old license to change. But every new clone adapts to the new license. Not 100% sure though, would be nice to have here more resources. – Jan Hackenberg Sep 03 '18 at 19:13
  • @JanHackenberg No it would not, this is a legal issue not a programming one. – Pierre Arlaud Sep 04 '18 at 07:27
  • 1
    @Pierre Arlaud Of course it is a legal issue. Its your special right as license holder to change license, also after distribution. What you cannot take away later is already distributed copies under old and different license. So as soon as you changed license, you will have your program distributed under 2 different licenses. – Jan Hackenberg Sep 05 '18 at 17:14
  • @JanHackenberg I was answering "would be nice to have here more resources". And I'm saying, no, this topic is closed as off-topics, legal issues do not have a place in this specific network. – Pierre Arlaud Sep 06 '18 at 07:36
  • @Pierre Arlaud Okay, so you refer to the topic itself, not my comment. I undestood it in a different way. Thanks for updating me, I will respect the closed tag now. Have a good day. – Jan Hackenberg Sep 07 '18 at 15:50
  • 1
    Legal discussions aside, the answer is "Yes": you can re-license your repo by removing the LICENSE file and creating a new one. Github will recognize the file name and offer you license templates as when you pick the license the first time. I just did it on my [repo](https://github.com/dimag0g/nios_duino). – Dmitry Grigoryev Jun 12 '19 at 18:21
  • 1
    I cant see what wrong with this topic. The answer is perfect and still valid May 2020. – Peter Gloor May 08 '20 at 13:09
  • Add LICENSE.md file to your repo by copying content from here https://gist.github.com/nicolasdao/a7adda51f2f185e8d2700e1573d8a633#1-mit – Kanagavelu Sugumar Sep 22 '21 at 05:07

1 Answers1

186

If you release it with a license, you allow people to use it as the licence describes. You can't just say "no I changed my mind I don't want it to be under GPL". Of course your future release may be in another license (GPL forces other people's modified versions to be GPL, but you, as the creator, may release new versions of your work under a new license).

Amendment

Websites like choosealicense.com may help you to choose a suitable license. The license picker provides some templates that can be committed to your repository; for an existing repository you can bring it back this way:

  • browse to your repository at GitHub.com
  • create a new file by pressing the blue + icon (updated to: New File button)
  • name it LICENSE.md or LICENSE.txt to show up the license picker again
  • choose a template
inavda
  • 333
  • 5
  • 15
Pierre Arlaud
  • 4,040
  • 3
  • 28
  • 42
  • 22
    As long as no external GPL code is used in the project, the author isn't required to release modified versions under the GPL. – Wooble Nov 27 '13 at 13:09
  • @Wooble you're right, it somehow came out wrong when I said it. But even though the author remains the author of the software, it can't just "remove" the GPL license out of thin air. – Pierre Arlaud Nov 27 '13 at 13:12
  • 8
    Actually, yes, you can. If others have a GPL'd version, you can't retract that, but you can certainly stop distributing it yourself in favor of another version licensed as you want now. – jthill Nov 27 '13 at 13:46
  • @jthill "Of course your future release may be in another licence" (or without any). The point is, a former GPL release cannot be cancelled, everyone who has downloaded the code when it was released with GPL at the time can still use it as such. And it's for the best! – Pierre Arlaud Nov 27 '13 at 13:48
  • 57
    He's asking about the license in his repo. You're talking about the license in other peoples' copies, not at all the same thing, and not addressing the question he's asking. Why not just say up front "yes, you can change the license in your repo, but of course you can't revoke any license others may have already received"? – jthill Nov 27 '13 at 14:01
  • 2
    +1 for rephrasing what I couldn't. The whole point of his post however is to get the license right the first time, so it was worse mentioning that the revokation wasn't allowed. – Pierre Arlaud Nov 27 '13 at 14:04
  • 7
    @jthill: This was whatI wanted to read as an answer. It is common sense that you can't release something and then change the license. – Chris Nov 28 '13 at 09:44
  • I meant worth* mentioning of course. – Pierre Arlaud Nov 28 '13 at 09:47
  • 1
    This was extremely helpful. I spent hours trying to find out WHERE on Github I can choose the license. Typing license.txt into this field was the answer. However, the NASA Open Source Agreement is not among the templates. My first release was under this license (somehow I must have managed that), but later releases inadvertently reverted to "Other (Open)". How can I pick the NASA license again, at least for the next release? – Norbert S Apr 04 '16 at 08:00
  • @Wooble, you said: "As long as no external GPL code is used in the project, the author isn't required to release modified versions under the GPL." What if I've linked the code to a GPL library? Can I change the license if I stop using that GPL library? – apadana Mar 16 '19 at 18:14
  • @Arham that's a question for the law network – Pierre Arlaud Mar 18 '19 at 08:30
  • 1
    This answer explains well how licensing works, but it does not answer the original question of how to get the GitHub interface to change the license listed on a project. – Eric Dand Mar 11 '22 at 00:56