Github如何选择合适的license

license 译为许可证,也可作为开源协议,它可以将自己创作的东西,授权给他人使用,并约定了使用者可以有的权利和必须遵从的义务。开源 ≠ 没有约束

常见开源协议

协议 简述
Apache 允许他人修改源代码后再闭源,但是必须对每个修改过的文件做版权说明
GPL3 无论以何种方式修改或者使用代码,都需要开源
MIT 允许他人修改源代码后再闭源,不用对修改过的文件做说明,且二次开发的软件可以使用原作者的名字做营销
BSD2/BSD3 和上面一条类似,但未经事先书面许可,不得使用版权所有者的姓名或其贡献者的姓名来推广
BSL 和 GPL 类似,但不需要复制版权信息
CCZ 放弃创作的作品版权权益,并将其奉献给大众,不对代码做任何担保
EPL 与 GPL 类似,有权使用、修改、复制与发布软件原始版本和修改后版本,但在某些情况下则必须将修改内容一并释出
AGPL GPL 拓展,使用在线网络服务的也需要开源
GPL2 和 GPL3 相比,如果使用代码作为服务提供,而不分发软件,则不需要开源
LGPL 和 GPL 相比,LGPL 允许商业软件通过类库引用(link)方式使用 LGPL 类库而不需要开源商业软件的代码
Mozilla 与 LGPL 类似,但是需要对修改过的源码内容做说明
Unlicense 与 CCZ 相似,且开放商标和所用的专利授权

如果不想在 License 耗费太多精力,那么推荐重点了解这三种:GPL、Apache License 及 MIT。这三种在开源 License 中很具代表性,使用广泛,且简洁易理解。主要授权 有源码 /可使用 /可拷贝 /可修改 /可再发版 /专利可用(MIT License 没有明确的专利授权条款)

详细比对

|900

参考

GitHub 如何选择合适的 license(许可证)
添加许可到仓库


© 2024 LiQ :) 由 Obsidian&Github 强力驱动