【许可证】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.
相关推荐
说私域7 小时前
基于开源AI智能名片链动2+1模式S2B2C商城小程序的超级文化符号构建路径研究
人工智能·小程序·开源
猫头虎9 小时前
猫头虎 AI工具分享:一个网页抓取、结构化数据提取、网页爬取、浏览器自动化操作工具:Hyperbrowser MCP
运维·人工智能·gpt·开源·自动化·文心一言·ai编程
特立独行的猫a9 小时前
百度AI文心大模型4.5系列开源模型评测,从安装部署到应用体验
人工智能·百度·开源·文心一言·文心一言4.5
大咖分享课12 小时前
开源模型与商用模型协同开发机制设计
人工智能·开源·ai模型
tinker13 小时前
使用 Syncthing 2.0 搭建私有同步服务器
开源
断剑重铸之日13 小时前
Android开发:GoogleMap电子围栏与联想地址搜索
开源
Sincerelyplz13 小时前
【Temproal】快速了解Temproal的核心概念以及使用
笔记·后端·开源
小黄编程快乐屋13 小时前
「源力觉醒 创作者计划」_文心 4.5 开源模型玩出花——教育场景下 Scratch 积木自动化生成的部署实践与优化
开源
时序数据说19 小时前
时序数据库IoTDB用户自定义函数(UDF)使用指南
大数据·数据库·物联网·开源·时序数据库·iotdb