如何选择开源许可证(阮一峰)
ABSTRACT
阮一峰 2011 年博文,是乌克兰程序员 Paul Bagwell 开源许可证选择图的中文版制作说明:在 GPL/BSD/MIT/Mozilla/Apache/LGPL 六种最流行的许可证间按决策树快速选择。剪藏正文极短且核心的图片缺失,信息量主要在评论区的几个法律常识补充。
核心要点
- 世界上的开源许可证上百种,最流行的六种为 GPL、BSD、MIT、Mozilla(MPL)、Apache、LGPL,选择图用两分钟讲清最大区别(本剪藏图片缺失)。
- 评论区法律常识:没有版权说明的公开代码 = 保留全部版权,只能借鉴不能直接用。
- CC(创意共享)系列是为内容文档设计,不对应软件授权;CC 的 NC(禁商用)、ND(禁演绎)条款在开源软件许可证中没有对应物。
- 许可证变更不溯及既往:项目改许可证,对变更前已获取旧版的用户不生效。
- LGPL 传染边界:仅链接/调用(而非源码包含或修改)LGPL 库可避免自身被传染;静态链接与直接使用源码实质等同。
- MIT 约束最少、GPL 约束最多;个人随意作品建议 MIT,需严格保护可选 GPL。
关键实体与概念
GPL、BSD、MIT、MPL、Apache、LGPL、AGPL、CC 许可证、许可证变更、静态/动态链接、版权保留
关联概念
来源回溯
- 原始文件:
raw/gamedev/如何选择开源许可证-阮一峰的网络日志.md(evernote/FW-游戏3研发技术 导入) - 重复提示:与既有摘要 如何选择开源协议(得思斋主) 主题重复——后者正是基于本选择图的实战解读,且含完整的选型逻辑与 FAQ,信息更全;本页仅存评论区补充的几条法律常识。
时效性评估
- 仍有效:六种许可证的核心差异与「无声明即保留全部版权」「变更不溯及既往」等常识至今成立。
- 已过时:选择图为 2011 年版本,未覆盖 AGPL 普及、SSPL/Elastic 等云保护协议与 AI 模型权重许可证等新变量;更完整的现代视角见 如何选择开源协议(得思斋主)。