开源协议介绍

开源协议是控制开源软件分发的法律声明,它使得软件能够被任何人自由使用、复制、修改和分发。下面是一些常见的开源协议:

MIT 许可证:非常灵活的许可证,允许你做几乎任何事情,只要在副本中包含原始的版权和许可声明。这可能是最简洁的许可证。

Apache 2.0 许可证:类似于 MIT 许可证,但额外提供了对专利权的明确授权,并包含针对商标的条款。

GNU 通用公共许可证(GPL):保障你享有使用、研究、修改和分享软件的自由。GPL 要求所有基于 GPL 的代码或者包含 GPL 代码的项目必须完全开源,并且使用相同协议。

BSD 许可证:相比 MIT 更详细一些,分为 BSD 2-Clause "Simplified" 或 "FreeBSD" 和 BSD 3-Clause "New" 或 "Revised"两种形式。

Mozilla Public License 2.0(MPL-2.0): MPL 是一个灵活框架, 允许混合开源与专有软件, 同时还确保了代码在他人手中仍然是自由且公开。

Creative Commons (CC): 主要用于艺术和文化作品等创意作品, 而不是软件。通过组合CC BY (署名), CC SA (相同方式分享), CC NC (非商业性使用), CC ND (禁止演绎)等子条款形成多种版权模式。

选择哪种许可协议取决于你如何希望别人使用你的代码。如果你希望尽可能多地鼓励其他人使用并改进你的代码,那么 MIT 或 Apache 协议会比较适合。如果你希望确保所有基于你代码改进或扩展出来的新项目也必须采用相同协议并且开源,则应选择 GPL。

在发布项目时,在项目根目录下创建一个名为 LICENSE 或 LICENSE.txt 的文件,在文件中写入所选协议内容即表示将该协议应用到了项目上。 当然, Github创建新仓库时也提供了直接添加开源协议的选项, 可以方便的使用。

在使用其他人的开源代码时,一定要先阅读并理解其协议内容,以避免侵犯原作者权益。

相关推荐
QiLinkOS1 天前
极客与商业思维的融合实践(1)
c语言·数据库·c++·人工智能·算法·开源协议
Par@ish2 天前
关于开源GNU通用许可(GPLv3)详细解说
web安全·开源·开源协议
该昵称用户已存在3 天前
零门槛自主可控:MyEMS MIT 开源协议下的企业能碳治理全栈实践
开源协议
X54先生(人文科技)5 天前
ELR-SELLM 碳硅光阴协同演进系统架构文档
人工智能·深度学习·系统架构·开源协议
2601_961194026 天前
高中英语教资资料推荐|科三大题背诵和教学设计模板
git·开源·github·开源软件·开源协议·ossinsight
X54先生(人文科技)7 天前
《元创力》纪实录·卷宗2.1P上去的安全带:当“表演性合规”成为文明的遮羞布
人工智能·架构·开源·ai写作·开源协议
X54先生(人文科技)7 天前
《元创力》纪实录·桥段陶罐的测绘:当“表演性安全”吞噬星辰
人工智能·开源·开源协议·零知识证明
X54先生(人文科技)9 天前
《终章-镜中深爱之星》上架成果简报
人工智能·音频·ai写作·开源协议
X54先生(人文科技)11 天前
《元创力》纪实录·桥段刻舟遗碑:当“唯一解”的文明抵达终点
人工智能·开源·开源协议·零知识证明
该昵称用户已存在11 天前
摆脱厂商锁定:MyEMS MIT 开源协议赋能企业能源数字化全栈自主
能源·开源协议