【许可证】Open Source Licenses

长期更新


扩展:shield.io装饰

开源许可证(Open Source Licenses)有很多种,每种都有不同的授权和限制,适用于不同目的。

默认的ISC🟰MIT

License 是否可商用 是否要求开源衍生项目 是否必须署名 是否有专利授权 特点
MIT ✅ 是 ❌ 否 ✅ 是 ❌ 否 非常宽松,适合最大范围使用
Apache 2.0 ✅ 是 ❌ 否 ✅ 是 ✅ 有 类似 MIT,但有专利保护
GPLv3 ✅ 是 ✅ 是(强制) ✅ 是 ✅ 有 Copyleft 强制开源,适合理想主义者
LGPLv3 ✅ 是 部分要求 ✅ 是 ✅ 有 更宽松的 GPL,可用于商业库
BSD 2-Clause / 3-Clause ✅ 是 ❌ 否 ✅ 是 ❌ 否 和 MIT 类似,更简洁
MPL 2.0 ✅ 是 ✅ 是(仅修改部分) ✅ 是 ✅ 有 文件级别开源,适合公司使用
Unlicense ✅ 是 ❌ 否 ❌ 否 ❌ 否 完全放弃版权,相当于公共领域
  • 使用场景
    MIT:适合个人项目、工具库、想让别人随便用【常用】
    Apache 2.0:适合商业公司,希望有专利保护
    GPL:适合你坚持"开源必须回馈开源"的理念
    LGPL:适合你写的是第三方依赖库,希望商用项目也能用
    BSD:MIT 的替代品,少数企业偏好
    MPL:适合大型项目,比如浏览器,要求不太严格
    Unlicense / CC0:你不在乎版权,想让代码彻底归公用领域

使用

  • 其他人使用时需要注意
  1. 保留原始的版权声明
    无论是源代码文件、构建后的文件,还是其他分发版本,别人必须保留你原始代码中的 版权声明。这通常在代码文件的顶部或者 LICENSE 文件中。
js 复制代码
/*
 * Copyright (c) [年份] [你的名字或组织]
 * Licensed under the ISC License. See LICENSE file for details.
 */
  1. 如果修改了代码,必须注明修改
    如果其他人在你的代码上做了修改,他们通常需要按照许可证的要求,在其修改的代码中注明是基于你的代码做的修改,并且保留原始的版权声明。
    这可能会出现在修改过的代码文件顶部,通常会写成类似以下内容:
js 复制代码
/*
 * Copyright (c) [年份] [原作者的名字或组织]
 * Modified by [修改者的名字]
 * Licensed under the ISC License. See LICENSE file for details.
 */
  1. 在文档或 README 文件中注明
    如果他们在自己的项目中使用你的开源包,可以在项目的 README.md 文件或相关文档中提到你的版权信息和许可证声明。尤其是当项目涉及多个依赖时,很多开发者会在 README.md 文件中列出依赖的开源项目和它们的许可证类型。
  2. 对于 GPL 许可证的要求
    如果你使用的是 GPL 许可证,要求会更严格。除了在代码中保留版权声明,如果代码被修改并发布,修改后的源代码必须公开,并附带原始的版权声明和许可证信息。这意味着,用户必须在自己的分发版本中附上原始的许可证、版权声明,并且提供源代码。

ISC

虽然默认,但是也要加上LICENSE文件

txt 复制代码
ISC License

Copyright (c) [年份] [你的名字或组织]

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

MIT

通常放在你项目的根目录,文件名叫 LICENSE(无扩展名)

在 package.json 中加 "license": "MIT"

在 GitHub 上建仓库时选择「MIT License」,GitHub 会自动帮你加上

把下面的年份 你的名字或组织名整个替换掉

txt 复制代码
MIT License

Copyright (c) [年份] [你的名字或组织名]

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
相关推荐
今朝唯我少年郎6 小时前
Codex实战用AI 写运维脚本
开源
judezh6 小时前
验证一个容器镜像到底在验什么?我把自家 v1.0.0 的签名从注册表一路扒到了证书里
安全·开源
2601_962300477 小时前
python是跨平台的吗
python·开源·跨平台·面向对象·
yu俞娥宝7 小时前
DeepSeek Harness 开源贡献手记:参与AI智能体框架共建的实战与成长
人工智能·开源
冬奇Lab18 小时前
一天一个开源项目(第216篇):OpenViking - 给 AI Agent 装上可自进化的上下文数据库
人工智能·开源·资讯
TunerT_TQ1 天前
Netflix|一个时代的终结:Hystrix静态工程评测,兼谈微服务容错范式的代际迁移
开源·github·资讯
莫生灬灬1 天前
灵码 LingBuilder:用中文写代码,确定性生成真实 C++ 工程(开源)
c++·开源·mfc
萧鼎1 天前
2026实战:用 accelerate 库加速 PyTorch 训练,核心语法与避坑指南
python·开源·教程·python库·accelerate
m4Rk_1 天前
【论文阅读】Agent 记忆机制(68):Memp——把历史轨迹沉淀为可检索、可纠错的程序性记忆
论文阅读·人工智能·学习·开源·github
a1117761 天前
莱茵生命终端 网页 html
前端·开源