首先声明:
本文中对各个开源许可证的描述仅是一个通俗易懂的解释,并不是法律建议。
本人不对这些内容做任何保证,也不承担因这些内容导致的损失或任何责任。
具体许可证内容及许可证的限制、要求等,请参考其各自许可证的原文。
以下内容中对任何许可证的对比,仅指片面的粗略概括,并不是指原文内容。
MIT License
限制及要求相对自由。
- 允许用于商业目的
- 允许发行
- 允许修改
- 允许私人使用
- 许可证和版权声明的副本必须随软件一起提供
- 不承担一定的责任
- 不提供任何保证
GNU GPLv3 License (GNU General Public License v3.0)
限制及要求相对较严格。
- 允许商业用途
- 允许发行
- 允许修改
- 明确授予专利权
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 分发软件时必须以相同的许可证发布修改(在某些情况下可以使用类似或相关的许可证)
- 对源代码的修改必须有文件记录
- 不承担一定的责任
- 不提供任何保证
Apache License 2.0
限制及要求相对中性。
- 允许商业用途
- 允许发行
- 允许修改
- 明确授予专利权
- 允许私人使用
- 许可证和版权声明的副本必须随软件一起提供
- 对源代码的修改必须有文件记录
- 不承担一定的责任
- 不授予商标权
- 不提供任何保证
BSD 2-Clause "Simplified" License
限制及要求和 MIT 许可证相似。
- 允许用于商业目的
- 允许发行
- 允许修改
- 允许私人使用
- 许可证和版权声明的副本必须随软件一起提供
- 不承担一定的责任
- 不提供任何保证
BSD 3-Clause "New" or "Revised" License
限制及要求和 MIT 许可证相似。
- 允许用于商业目的
- 允许发行
- 允许修改
- 允许私人使用
- 许可证和版权声明的副本必须随软件一起提供
- 不承担一定的责任
- 不提供任何保证
Eclipse Public License 2.0
- 允许商业用途
- 允许发行
- 允许修改
- 明确授予专利权
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 分发软件时必须以相同的许可证发布修改(在某些情况下可以使用类似或相关的许可证)
- 不承担一定的责任
- 不提供任何保证
GNU AGPLv3 (GNU Affero General Public License v3.0)
限制及要求更严格。
- 允许商业用途
- 允许发行
- 允许修改
- 明确授予专利权
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 通过网络与软件进行交互的用户有权获得源代码的副本
- 分发软件时必须以相同的许可证发布修改(在某些情况下可以使用类似或相关的许可证)
- 对源代码的修改必须有文件记录
- 不承担一定的责任
- 不提供任何保证
GNU GPLv2 (GNU General Public License v2.0)
相比于 GNU GPLv3 许可证,少了一条明确授予专利权。
- 允许商业用途
- 允许发行
- 允许修改
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 分发软件时必须以相同的许可证发布修改(在某些情况下可以使用类似或相关的许可证)
- 对源代码的修改必须有文件记录
- 不承担一定的责任
- 不提供任何保证
GNU LGPLv2.1 (GNU Lesser General Public License v2.1)
相比于 GNU GPLv2 许可证,区别在相同许可证的限制。
- 允许商业用途
- 允许发行
- 允许修改
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 分发软件时必须以相同的许可证发布修改(在某些情况下可以使用类似或相关的许可证,或者这个条件可能不适用于将本软件作为库使用的作品)
- 对源代码的修改必须有文件记录
- 不承担一定的责任
- 不提供任何保证
GNU LGPLv3.0 (GNU Lesser General Public License v3.0)
相比于 GNU GPLv3 许可证,区别在相同许可证的限制。
- 允许商业用途
- 允许发行
- 允许修改
- 明确授予专利权
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 分发软件时必须以相同的许可证发布修改(在某些情况下可以使用类似或相关的许可证,或者这个条件可能不适用于将本软件作为库使用的作品)
- 对源代码的修改必须有文件记录
- 不承担一定的责任
- 不提供任何保证
Mozilla Public License 2.0
- 允许商业用途
- 允许发行
- 允许修改
- 明确授予专利权
- 允许私人使用
- 必须公开源代码
- 许可证和版权声明的副本必须随软件一起提供
- 分发软件时必须以相同的许可证发布对现有文件的修改(在某些情况下可以使用类似或相关的许可证)
- 不承担一定的责任
- 不授予商标权
- 不提供任何保证
The Unlicense
- 允许商业用途
- 允许发行
- 允许修改
- 允许私人使用
- 不承担一定的责任
- 不提供任何保证
最后给萌新一点建议,如果开源的内容对你没有太大的利弊影响并且不想做太多限制,可以选择普遍且宽松的 MIT 许可证。
各个许可证的特点来源于:choosealicense.com
如果发现文章内容有任何不正之处,欢迎评论指出。谢谢!