常见的各开源协议及其授权解释一览

文章目录[隐藏]

先来了解一些下方表格中出现的用词的解释:

  • 协议和版权信息(License and copyright notice):在代码中保留作者提供的协议和版权信息
  • 声明变更(State Changes):在代码中声明对原来代码的重大修改及变更
  • 公开源码(Disclose Source):代码必需公开。如果是基于LGPL协议 下,则只需使用的开源代码公开,不必将整个软件源码公开
  • 库引用(Library usage):该库可以用于商业软件中
  • 责任承担(Hold Liable):代码的作者承担代码使用后的风险及产生的后果
  • 商标使用(Use Trademark):可以使用作者的姓名,作品的Logo,或商标
  • 附加协议(Sublicensing):允许在软件分发传播过程中附加上原来没有的协议条款等
协议 描述 要求 允许 禁止
Apache 一个较宽松且简明地指出了专利授权的协议。
  1. 协议和版权信息
  2. 声明变更
商用

分发

修改

专利授权

私用

附加协议

责任承担(禁止让作者承担责任,可以理解为免责

商标使用

GPL 此协议是应用最为广泛的开源协议,拥有较强的版权自由( copyleft )要求。衍生代码的分发需开源并且也要遵守此协议。此协议有许多变种,不同变种的要求略有不同。
  • 公开源码
  • 协议和版权信息
  • 声明变更
  • 商用
  • 分发
  • 修改
  • 专利授权
  • 私用
  • 责任承担
  • 附加协议
MIT 宽松简单且精要的一个协议。在适当标明来源及免责的情况下,它允许你对代码进行任何形式的使用。
  • 协议和版权信息
  • 商用
  • 分发
  • 修改
  • 私用
  • 附加协议
  • 责任承担
Artistic Perl社区尤为钟爱此协议。要求更改后的软件不能影响原软件的使用。
  • 协议和版权信息
  • 声明变更
  • 商用
  • 分发
  • 修改
  • 私用
  • 附加协议
  • 责任承担
  • 商标使用
BSD 较为宽松的协议,包含两个变种BSD 2-ClauseBSD 3-Clause,两者都与MIT协议只存在细微差异。
  • 协议和版权信息
  • 商用
  • 分发
  • 修改
  • 私用
  • 附加协议
  • 责任承担
Eclipse 对商用非常友好的一种协议,可以用于软件的商业授权。包含对专利的优雅授权,并且也可以对相关代码应用商业协议。
  • 公开源码
  • 协议和版权信息
  • 商用
  • 分发
  • 修改
  • 专利授权
  • 私用
  • 附加协议
  • 责任承担
LGPL 主要用于一些代码库。衍生代码可以以此协议发布(言下之意你可以用其他协议),但与此协议相关的代码必需遵循此协议。
  • 公开源码
  • 库引用
  • 协议和版权信息
  • 商用
  • 分发
  • 修改
  • 专利授权
  • 私用
  • 附加协议
  • 责任承担
Mozilla Mozilla Public License(MPL 2.0)是由Mozilla基金创建维护的。此协议旨在较为宽松的BSD协议和更加互惠的GPL协议中寻找一个折衷点。
  • 公开源码
  • 协议和版权信息
  • 商用
  • 分发
  • 修改
  • 专利授权
  • 私用
  • 附加协议
  • 责任承担
  • 商标使用
No license 你保留所有权利,不允许他人分发,复制或者创造衍生物。当你将代码发表在一些网站上时需要遵守该网站的协议,此协议可能包含了一些对你劳动成果的授权许可。比如你将代码发布到GitHub,那么你就必需同意别人可以查看和Fork你的代码。
  • 协议和版权信息
  • 商用
  • 私用
  • 分发
  • 修改
  • 附加协议
Public domain dedication 在许多国家,默认版权归作者自动拥有,所以Unlicense协议提供了一种通用的模板,此协议表明你放弃版权,将劳动成果无私贡献出来。你将丧失对作品的全部权利,包括在MIT/X11中定义的无担保权利。 N/A
  • 商用
  • 分发
  • 修改
  • 私用
  • 责任承担

非代码类作品的协议

上面各协议只是针对软件或代码作品,如果你的作品不是代码,比如视频,音乐,图片,文章等,共享于公众之前,也最好声明一下协议以保证自己的权益不被侵犯。针对非代码的数字作品的协议,最通用的莫过于Creative Commons(也是你经常在别人博客下面可以看到的CC协议)协议。

无协议

你没有义务也没人非要你必需在自己的代码作品里面加上一个开源协议。但如果你想把代码分享出来,最好还是选择一个适合的开源协议,这样别人用着放心你也放心。

相关推荐:
装了个Linux,不幸地是开机时遇到了错误的提示“Could not apply the stored configuration for monitors”。简单地从英文上理解就是说当前的显示配置运用时有问题,换句话说这是显示器的配置文件出了异常。 …
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它 …
Hyper-V是微软的一款虚拟化产品,是微软第一个采用类似Vmware和Citrix开源Xen一样的基于hypervisor的技术。这也意味着微软会更加直接地与市场先行者VMware展开竞争,但竞争的方式会有所不同。 如何开启?首 …
平时用WinRAR对文件进行解压时速度会好慢,是不是其本身的设置问题导致的呢?伊凡门户作者经过一番测试后发现,确实是本身设置上有问题,下面来改变一下设置来提高解压缩速度。 打开WinRAR,单击选项→设置 …
当你的控制台上找不到错误或者看不懂错误的时候,点 Project-->clean,清空下项目就会没问题。
拿起手机扫一扫即可带走我!