【许可证】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.
相关推荐
世人万千丶16 小时前
Flutter 框架跨平台鸿蒙开发 - 恐惧清单应用
学习·flutter·华为·开源·harmonyos·鸿蒙
AI_零食18 小时前
Flutter 框架跨平台鸿蒙开发 - 孤独指数应用
学习·flutter·开源·harmonyos
芯智工坊19 小时前
第13章 Mosquitto监控与日志管理
前端·网络·人工智能·mqtt·开源
扬帆破浪19 小时前
开源的WPS AI文档编审软件适用场景:察元 AI 文档助手
人工智能·开源
扬帆破浪19 小时前
麒麟系统安装察元 WPS AI 文档助手:免费、开源、离线部署说明
人工智能·开源·wps
搜佛说20 小时前
01-第1章-概述与快速开始
物联网·golang·开源·软件工程·边缘计算·嵌入式实时数据库
2301_8227032020 小时前
开源鸿蒙跨平台Flutter开发:跨端图形渲染引擎的类型边界与命名空间陷阱:以多维雷达图绘制中的 dart:ui 及 StrokeJoin 异常为例
算法·flutter·ui·开源·图形渲染·harmonyos·鸿蒙
2301_8227032021 小时前
鸿蒙flutter框架Error: 00625004 SymLink Dir Failed解决方案
flutter·华为·开源·harmonyos·鸿蒙
扬帆破浪21 小时前
免费开源的WPS AI 插件,离线安装、多系统与内网模型
人工智能·开源·wps
世人万千丶21 小时前
Flutter 框架跨平台鸿蒙开发 - 嫉妒分析器应用
学习·flutter·华为·开源·harmonyos·鸿蒙