1. None / No License

    默认协议,不允许他人复杂、分发、修改、使用,只能fork下来看

  2. Apache License 2.0

    允许个人使用、商业使用、复制、修改、分发,但是出了事作者免责,版权信息要保留。做了修改要说明。

  3. MIT License

    允许个人使用、商业使用、复制、修改、分发,但是必须保留作者信息,比较宽松。

  4. GNU GPLv3

    它允许个人使用、商业使用、专利授权,允许复制、分发、修改,作者不承担用户使用的一切后果。但是它有很多限制:

    你必须开源,无论有没有修改。

    协议和版权信息要保留说明

    协议不能私自更改,与原版本一致。

    你修改的地方要说清楚。

  5. BSD 2-Clause “Simplified” License

    允许许任何人进行个人使用、商业使用、复制、分发、修改,加上作者的版权信息,还必须保留免责声明,免去作者的一些责任(比如使用后果)

  6. BSD 3-Clause “New” or “Revised” License

    在BSD 2-Clause “Simplified” License协议的基础上,还不得追加使用作者的信息做商业宣传。例如,你对外说是作者某某某的作品,利用人家的名气。但是你自己做了不当的修改。

  7. Eclipse Public License 2.0

    允许个人使用、商业使用、专利授权、复制、分发和修改,作者免责,需要保留版权信息、必须开源、不允许更换协议, 特点在于可以对软件进行商业使用,对专利授权免去版税

  8. GNU Affero General Public License v3.0

    允许个人使用、商业使用、专利授权、复制、分发和修改,作者免责,贡献者可以快速专利授予,需要保留版权信息、必须开源、不允许更换协议、声明变更。和GPL类似,不同点在于,如果你修改了源码并在放到网上提供服务,那么你必须公开这个修改版本的完整的源代码。

  9. GNU General Public License v2.0

    相比于 GNU GPLv3,不能进行专利授予.

  10. Mozilla Public License 2.0

    许个人使用、商业使用、专利授权、复制、分发和修改,作者免责,需要保留版权信息、必须开源,不允许更换协议(但允许更换成某些GNU协议),不允许使用商标。

  11. The Unlicense

    完全免费,无约束。出了事情作者免责。

使用推荐

1、普通开发者

如果你是信仰开源大法的普通开发者,使用 MIT License 协议即可,它会保留你的版权信息,又允许他人进行修改。

2、用到了GNU的开发者

如果你用到了GNU的库,由于“传染性”,不允许更换协议,必须选择GNU相关的协议。

3、开源库开发者

推荐使用GNU LGPL相关协议。

4、无私奉献的雷锋

感谢你为世界作出的贡献,必选The Unlicense。

5、不知道该选什么

选择默认的None即可,保留你的全部权利,后续再去决定要不要更换协议。

注意,以上内容为个人总结,方便大家快速了解,可能会有所偏差,如您需要商用,请自行深入了解对应的授权概念,本文作者不承担任何责任。

编写参考:https://blog.csdn.net/qq_42768234/article/details/104193778

github常见开源协议概括的更多相关文章

  1. 了解常见的开源协议(BSD, GPL, LGPL,MIT)

    一直对各种开源协议比较模糊, 特意在网上搜索了一下资料, 整理总结,以作记录 如果不喜欢长篇大论的话, 看下图就可以了 基本概念了解: 1. Contributors 和 Recipients Con ...

  2. 你必须要懂的 Github 开源协议

    作为一个开源社区的活跃者,那些开源协议你都懂什么意思吗? 列两个: Apache License 可以: 商用.修改.分发 但是要声明作者来源和你的修改以及协议 MIT  License 只要声明版权 ...

  3. 从开源协议到谷歌禁用华为、Docker实体清单事件

    ​平时我们在日常开发生活都在大量和开源软件打着交道,例如安卓.Linux.Github.Docker等,而其中开源协议比如MIT.Apache也是耳熟能详,但是真正对开源协议的了解相信对大部分人来说都 ...

  4. 聊聊 Apache 开源协议

    摘要 用一句话概括 Apache License 就是,你可以用这代码,但是如果开源你必须保留我写的声明:你可以改我的代码,但是如果开源你必须写清楚你改了哪些:你可以加新的协议要求,但不能与我所 公布 ...

  5. [转]五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)

    当Adobe.Microsoft.Sun等一系列巨头开始表现出对"开源"的青睐时,"开源"的时代即将到来!现今存在的开源协议很多,而经过Open Source ...

  6. 参与github上开源项目的大致流程和注意事项

    Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源 ...

  7. 四大开源协议比较:BSD、Apache、GPL、LGPL (转)

    转自:http://www.lupaworld.com/portal.php?mod=view&aid=205552&page=all 本文参考文献:http://www.fsf.or ...

  8. 五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)

    当Adobe.Microsoft.Sun等一系列巨头开始表现出对”开源”的青睐时,”开源”的时代即将到来!现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协 ...

  9. 五种开源协议的比较(BSD_Apache_GPL_LGPL_MIT)

    现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协议目前有58种(http://www.opensource.org/licenses/alphabetic ...

  10. github优秀开源项目大全-iOS

    github优秀开源项目大全-iOS APR 25TH, 2014 前言 本文旨在搜集github上优秀的开源项目 本文搜集的项目都是用于iOS开发 本文会持续更新… 完整客户端 ioctocat g ...

随机推荐

  1. Hi3516EV200 编译环境配置及交叉编译软件包

    基础信息 OS: Ubuntu 16.04 xenial SDK 版本: Hi3516EV200R001C01SPC012 - Hi3516EV200_SDK_V1.0.1.1 SDK 包路径:Hi3 ...

  2. FastAPI 错误处理与自定义错误消息完全指南:构建健壮的 API 应用 🛠️

    title: FastAPI 错误处理与自定义错误消息完全指南:构建健壮的 API 应用 ️ date: 2025/3/12 updated: 2025/3/12 author: cmdragon e ...

  3. [tldr] fish shell添加环境变量到配置文件

    fish shell配置文件的编写格式和位置都和bash不同 文件位置 位于~/.config/fish/config.fish 设置PATH fish shell不会去读取~/.bashrc文件中的 ...

  4. mysql - 视图的操作 创建,修改,删除,查看

    只保存sql逻辑,不保存查询结果 视图可以看作是封装了多条sql语句,之后使用的时候就像普通表一样,而这个表上的字段则是创建视图时,select 后边跟的字段,支持列的别名. 创建 语法: creat ...

  5. 谜一般的js,迷一般的console

    问题的来源,是关于事件对象的currentTarget的讨论,currentTarget是什么,嗯,很简单就是绑定了监听函数,并且当前监听函数正在执行的那个dom元素.本着踏实,实事求是,严以律己的态 ...

  6. go gin web服务器使用fvbock/endless优雅地重启或停止

    gin使用fvbock/endless gin 正常使用注册路由时: package main import "github.com/gin-gonic/gin" func mai ...

  7. golang gin框架使用swagger生成接口文档

    前言 一份清晰明了的接口文档能够极大地提高前后端双方的沟通效率和开发效率. 本文将介绍如何使用swagger生成接口文档. swagger介绍 Swagger本质上是一种用于描述使用JSON表示的RE ...

  8. 往EXCEL粘贴超长整数字段

    写一个表格的HTML <table border="1"> <tr> <td>1</td> <td>1234567890 ...

  9. 网站支持https之一:https原理和SSL证书类型

    1 https原理 https加密请求过程 Client和Server之间会进行一下几个步骤的交互: ① Client发送https请求: ② Client和Server通过tcp的三次握手建立连接, ...

  10. 【python日期和时间处理】time模块基本使用

    1. time模块中三种时间格式 时间戳 time模块获取各种精度的时间戳 import time timestamp = time.time() timestamp_s = int(time.tim ...