我正在发布一些代码,我应该使用什么许可证?

Jas*_*wis 5 open-source release

我一直在浏览许多关于软件许可的网页,这是一个真正的大脑打击者.合法的东西并不有趣,虽然我知道我必须在许可证下发布我的代码,否则我最后会遇到问题.

所以我刚刚完成了一个基于Web的丰富的媒体管理器,我正准备发布它.它使用jQuery(包括JSON插件和SWFUpload).所有代码都是我自己的,除了JSON插件和SWFUpload(都是在MIT License下发布的,我相信我可以使用它们,我希望如此).

我的代码将是开源的.有一些事情让我担心.

  1. 如果我将其作为开源发布,我是否会失去原版权所有者的权利?
  2. 真的,如果我希望人们能够免费使用它,按照他们想要的方式更改它,重新分配ORIGINAL工作(而不是更改的工作),我应该使用哪个许可证.

真的,我只是觉得我过度保护它.我想做的就是将它发布给公众,但我仍然保留了对它的所有权,因为我创建了它.

关于我应该去哪里的任何指示?我一直在关注GNU GPL,但并不完全确定.

问候,

杰森.

编辑:

在研究了很多之后,我已经确定了BSD或MIT许可证.我读过GPL许可证是合法的定时炸弹,不确定它是多么真实.

BSD和MIT许可证对最终用户几乎没有限制,基本上:版权声明和许可证必须包含在软件的任何重新分发中.

但是,BSD许可证确实说明了这一点:

未经事先书面许可,不得使用其贡献者的名称或其名称来支持或宣传从该软件衍生的产品.

有关哪一个更好的指示?

Art*_*ius 2

我的代码将是开源的。有几件事让我担心。

  1. 如果我将其作为开源发布,我是否会失去作为原始版权所有者的权利?

不,不受 GPL、MIT 或 BSD 约束。事实上,这些许可证依赖于您的版权作为对代码的使用/分发设置条件的手段。

您有权在多个许可证下发布您的代码——只要您首先创建了它(或者您根据允许这样做的许可协议使用代码)。假设您将代码发布为 GPL,然后创建该代码的新版本,则不需要在 GPL 下分发新版本。

例外情况是,如果您以 GPL 形式发布代码,而其他人制作了衍生作品,则此人对其更改拥有版权,并且未经他的许可,您不能发布包含其更改的非 GPL 版本。

.2. 真的,如果我希望人们能够免费使用它,按照他们想要的方式更改它,重新分发原始作品(而不是更改后的作品),我应该使用哪个许可证。

简而言之:

  • 如果您想防止人们未经您的许可在商业产品中使用您的软件,请使用 GPL。
  • 如果您不关心人们如何使用您的软件,请使用 BSD 或 MIT。
  • 如果您根本不希望人们分发修改后的副本,您需要不同的许可证。也许从免费软件许可证开始,允许修改源代码,但不允许分发修改后的副本。

请注意,我不是律师,这不是专业的法律建议。