GitHub 提供了众多开源许可证选项,这些许可证为软件的使用、修改、分发和商业化提供了法律框架。以下是一些最为常见和重要的开源许可证,及其特点和知名项目示例。
Apache License 2.0
- 类型:宽松许可证
- 特点:
- 允许修改、分发、再许可和商业使用
- 包含专利许可,授权使用贡献者的专利
- 要求保留版权和许可声明
- 知名项目:Apache Hadoop、Apache Kafka
GNU General Public License v3.0 (GPL-3.0)
- 类型:Copyleft 许可证
- 特点:
- 派生作品必须在 GPL-3.0 下授权
- 强制共享修改后的代码
- 知名项目:Linux 内核、GNU 工具链
MIT License
- 类型:宽松许可证
- 特点:非常宽松,几乎无限制的使用、复制、修改和发布权限,只需保留版权说明
- 知名项目:React.js、Node.js
BSD Licenses
BSD 2-Clause “Simplified” License
- 类型:宽松许可证
- 特点:允许重复使用代码,需在源代码和二进制分发中保留版权声明
- 知名项目:FreeBSD、OpenBSD
BSD 3-Clause “New” or “Revised” License
- 类型:宽松许可证
- 特点:类似 BSD 2-Clause,但需在产品销售时提供相关文档
- 知名项目:FreeBSD、LLVM 编译器
Boost Software License 1.0
- 类型:宽松许可证
- 特点:允许以任何目的使用、复制、修改和分发软件
- 知名项目:Boost C++ 库、POCO C++ 库
Creative Commons Zero v1.0 Universal (CC0)
- 类型:公共领域声明
- 特点:作者放弃所有版权和相关权利
- 知名项目:CC0 公共领域工具集、Unsplash 图片库
Eclipse Public License 2.0
- 类型:强制共享修改
- 特点:以EPL许可证的代码修改后的派生作品,必须以EPL发布
- 知名项目:Eclipse IDE、PyDev
GNU Affero General Public License v3.0 (AGPL-3.0)
- 类型:Copyleft 许可证
- 特点:所有派生作品都必须公开源代码
- 知名项目:GitLab、Nextcloud
Mozilla Public License 2.0
- 类型:Weak Copyleft 许可证
- 特点:修改的代码必须使用 MPL 发布,允许与其他许可证代码混合
- 知名项目:Mozilla Firefox、Thunderbird
The Unlicense
- 类型:公共领域声明
- 特点:作者放弃所有版权和相关权利
- 知名项目:SQLite、UglifyJS
开源社区的发展离不开无数开发者的贡献。致敬所有为开源事业奉献的人,正因为有你们,互联网世界才如此精彩和繁荣。