常见的几种License协议

开源协议:说明授权他人使用被开源的项目有哪些权利

协议查询:https://opensource.org/licenses/alphabetical

下面介绍几种常见的开源协议。

1. BSD 协议

Berkeley SoftWare Distrubution:伯克利软件发行版

可以自由使用、修改源码、修改后开源或者再发布。

使用条件:

1. 再发布的产品包含源码,则必须携带原来的BSD协议;
2. 再发布二进制类库或软件,其内部必须携带原来的BSD协议;
3. 禁止用原源码机构、原产品名称做市场推广;

2. Apache 协议

Apache License 2.0:Apache 开源协议 2.0

可以自由使用、修改源码、修改后开源或再发布(商业软件)。

使用条件:

1. 修改源码,必须在源码所在文件中进行声明;
2. 修改或拓展的代码中,必须携带原协议、商标、专利声明和作者要求包含的说明信息;
3. 如果使用源码后再发布的产品中包含说明文件,该说明文件必须携带 Apache License 且不能再改;

3. GPL 协议

GPL:GNU Genaral Public License(Linux):通用公共许可证

GNU 一种自由的操作系统。

可以自由使用、修改、拓展源码、修改后开源或再发布。

使用条件:

必须开源免费且不能商业化。

4. LGPL 协议

LGPL:GUN Lesser Gneral Public License:宽通用公共许可证

主要用于针对类库,可以自由引用,无需开源,可发布与销售。

5. MIT 协议

MIT:Massachusetts Institute Of Technology(麻省理工学院)

可以自由使用、复制、修改、合并、发布、再授权、销售,可修改授权条款。

使用条件:

再发布的产品必须有版权声明和许可声明。

6. Mozilla 协议

MPL:The Mozilla Public License

可以自由使用、修改、发布。

使用条件:

1. 修改源码,必须开源;
2. 新增代码不可使用原许可;
3. 修改代码,必须提供说明文档;

7. ISC 协议

ISC:Internal Systems Consortium(互联网系统协会)

可以自由使用、修改可闭源、无需版权说明。

使用条件:

商用后不可使用作者名字进行宣传。

总结

看完这几种协议可能你还是一脸懵逼,没关系,看张图对进行对比。

licence.png

可以看到 MITLGPL 给予开发者的权限是最大的。其中 LGPL 主要是针对于类库。
目前主要使用的还是 MITISC 开源协议。有兴趣的小伙伴可以继续深入了解哦。