github开源协议选择

文章目录

怎么选协议

  • 希望代码被广泛使用,允许闭源 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

相关推荐
小毛驴8501 天前
HTTP方法GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS,TRACE,RESTful API设计的核心详解
http·github·restful
flow_code1 天前
切换git账户
git
lkbhua莱克瓦241 天前
Java基础——面向对象进阶复习知识点8
java·笔记·github·学习方法
春生野草1 天前
Gituee
git·gitee
222you1 天前
Git推送本地仓库到远程
git
逛逛GitHub1 天前
这个牛逼的股票市场平台,在 GitHub 上开源了。
前端·github
小贾要学习1 天前
如何在Linux操作系统环境下使用git命令提交文件到远程仓库
linux·运维·git
J2虾虾1 天前
WebStorm的项目绑定Git并上传到gitee
git·gitee·webstorm
tokepson1 天前
记录 | 个人开发库推送至PyPi流程梳理(ChatGPT to Markdown 工具发布完整流程)
python·github·技术·记录
掘金安东尼1 天前
前端周刊第436期(2025年10月13日–10月19日)
前端·javascript·github