程序员之路:开源许可证

程序员之路:开源许可证_第1张图片

开源许可证(license)

开源许可证是一种法律许可。通过它,版权拥有人明确允许,用户可以免费地使用、修改、共享版权软件。
版权法默认禁止共享,也就是说,没有许可证的软件,就等同于保留版权,虽然开源了,用户只能看看源码,不能用,一用就会侵犯版权。
所以软件开源的话,必须明确地授予用户开源许可证。

分类

  • 宽松式(permissive)许可证
  • Copyleft 许可证

宽松式(permissive)许可证

(1)没有使用限制
(2)没有质量担保
(3)披露原始作者(notice requirement)

常见许可证:
MIT
分发软件时,必须保留原始的许可证声明,不得使用原始作者的名字为软件促销。
Apache 2
分发软件时,必须保留原始的许可证声明。凡是修改过的文件,必须向用户说明该文件修改过;没有修改过的文件,必须保持许可证不变。

Copyleft 许可证

如果分发二进制格式,必须提供源码
修改后的源码,必须与修改前保持许可证一致
不得在原始许可证以外,附加其他限制

常见许可证:
GPL
如果项目包含了 GPL 许可证的代码,那么整个项目都必须使用 GPL 许可证。
LGPL
如果项目采用动态链接调用该许可证的库,项目可以不用开源。
Mozilla(MPL)
只要该许可证的代码在单独的文件中,新增的其他文件可以不用开源。

参考文章:

  1. 阮一峰的网络日志 - 开源许可证教程
  2. 一张图看懂开源许可协议,开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别

你可能感兴趣的:(else)