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

相关推荐
whysqwhw1 小时前
Kotlin `by`关键字特性深度解析
github
五号厂房1 小时前
Git Worktree 使用指南
git
uhakadotcom1 小时前
Loguru 全面教程:常用 API 串联与实战指南
后端·面试·github
秦jh_2 小时前
【git】企业级开发模型
git
逛逛GitHub3 小时前
推荐 5 个 yyds 的 Claude Skills 开源项目。
github
y***54884 小时前
Git在开源项目中的协作
git
weixin_436525074 小时前
使用 idea 命令行构建 Docker 镜像并部署到云服务器
linux·docker·github
MicrosoftReactor8 小时前
技术速递|GitHub Copilot CLI:快速上手指南
github·copilot
老友記8 小时前
git cherry-pick使用
git
蜜汁小强9 小时前
Github 账号与登录 2025
github