怎么选协议

  • 希望代码被广泛使用,允许闭源 MIT、Apache 2.0、BSD
  • 需要专利保护 Apache 2.0
  • 强制开源衍生作品 GPL、AGPL
  • 开发库,允许闭源调用 LGPL
  • 云服务项目,防止白嫖 AGPL
  • 企业级项目,平衡开源与商业 Apache 2.0、MIT

在这里插入图片描述

宽松型协议 Permissive Licenses

MIT License:
核心保留原始版权声明和许可声明。可商用闭源,修改后也无需开源,适合个人项目,非常宽松
如:React、Vue.js、jQuery

Apache License 2.0:
核心保留版权声明、许可证文件,明确包含专利授权条款。允许商用,闭源,修改
明确包含专利授权条款
如:Android、Kubernetes、Apache Kafka

BSD 3-Clause License:
保留版权声明和免责声明,禁止用作者名义推广衍生作品。允许商业用途、闭源、修改、分发
如:FreeBSD、Nginx

传染型协议

GNU General Public License (GPL):
修改后的代码必须开源,商业用途、修改、分发,衍生作品必须使用 GPL 协议,强调开源精神的项目
如:Linux、GCC、Git

GNU Affero General Public License (AGPL):
即使通过 SaaS(云服务)使用,也必须开源,商业用途、修改、分发,防止云服务公司闭源使用代码
如:MongoDB(早期版本)、Nextcloud

GNU Lesser General Public License (LGPL):
仅直接修改的代码需开源,动态链接库可闭源。商业用途、闭源调用库
如:FFmpeg、GTK

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐