开源许可证速查:MIT、Apache-2.0 与 GPL 怎么选

许可证是开源项目的「用户协议」。挑错了再改,贡献者的授权可能收不回来,所以第一版就要选对。

最宽松:MIT

一句话:保留版权声明,其余随意。可以闭源商用,不必开源衍生品。

前端生态(React、Vue、Astro 本身)绝大多数是 MIT。你想让库被尽可能多的项目使用,选它。

带专利授权:Apache-2.0

MIT 的所有自由 + 明确的专利授权 + 商标条款。大厂主导的项目(Kubernetes、大部分 ASF 项目)偏好它,因为它堵住了「代码让你用、专利告你侵权」的漏洞。

有专利顾虑的基础设施项目,选它。

传染性:GPL 系

GPL 要求衍生作品同样开源并使用 GPL —— 这就是「传染性」。LGPL 放宽了库链接场景,AGPL 则把传染延伸到了网络服务(SaaS 用了 AGPL 代码,服务端也要开源)。

GNU 工具链、Linux 内核都是 GPL。你的立场是「 derivatives 必须保持开放」时选它。

决策树

  1. 只求最大传播 → MIT
  2. 涉及专利或企业合规 → Apache-2.0
  3. 坚持下游必须开源 → GPL-3.0 / AGPL-3.0

本博客的文章默认采用 CC BY-NC-SA 4.0,对应 NexT 的 post_copyright 配置, 页面底部「版权声明」卡片就是它渲染出来的。

0%