如何在Github上更改项目的许可证?

174
我已经在 C 语言中创建了一个简单的列表 API,并想通过 Github 发布它。
创建仓库后是否有更改许可证的方法?

4
这个问题似乎不适合本站的主题,因为它涉及到重新授权许可证的问题,而不是编程。 - Wooble
36
@Wooble:许可证不是编程的一部分吗? - Chris
2
@ArlaudAgbePierre:这就是为什么我把它写成了旁注。主要问题是关于Github,以及我是否可以在创建存储库后更改许可证。 - Chris
1
@ArlaudAgbePierre:由于这是我第一次发布软件,我想确保我使用正确的许可证进行发布。同时,我对许可证方面还是个新手,如果不问问题就无法前进。 感谢您对GPL的澄清,现在我可以放心地选择MIT许可证了。 - Chris
1
@Pierre Arlaud,我进行了不同的研究。如果话题创建者是许可证持有人,则他肯定有权更改。但他尚不能强制已克隆的存储库更改旧许可证。但每个新克隆版都适应新许可证。虽然不100%确定,但可以在此处获得更多资源将会很好。 - Jan Hackenberg
显示剩余11条评论
1个回答

186
如果您发布一个许可证,您允许人们按照许可证描述使用它。您不能仅仅说“不,我改变了主意,我不想让它在GPL下”。当然,您将来的发布可能会采用另一种许可证(GPL强制其他人修改的版本也必须是GPL,但作为创建者,您可以以新的许可证发布您的作品的新版本)。
修正案
choosealicense.com这样的网站可以帮助您选择适合的许可证。 许可证选择器提供了一些模板,可以提交到您的存储库;对于现有存储库,您可以通过以下方式将其恢复:
  • 浏览GitHub.com上的存储库
  • 通过按下蓝色的+图标(更新为:新建文件按钮)创建一个新文件
  • 将其命名为LICENSE.mdLICENSE.txt,以再次显示许可证选择器
  • 选择一个模板

22
只要在该项目中未使用任何外部的GPL代码,作者就不必在GPL下发布修改后的版本。 - Wooble
8
实际上,是的,可以。如果其他人有GPL版本,你不能撤回那个版本,但你可以停止分发它,并选择另一个按你现在所希望授权的版本进行许可。 - jthill
57
他在询问他的存储库中的许可证。你谈论的是其他人副本中的许可证,这完全不同,并且没有回答他提出的问题。为什么不直接说“是的,你可以更改存储库中的许可证,但当然不能撤销其他人已经获得的任何许可证”? - jthill
2
他的帖子的重点在于第一次正确获得许可证,因此值得提到撤销是不允许的。如果我没有表达清楚,请重新表述并加1分。 - Pierre Arlaud
7
@jthill:这正是我想要作为答案阅读的内容。显而易见,你不能发布某个东西,然后再更改许可证。 - Chris
显示剩余7条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接