很多时候在把代码分享到Github仓库中,大多不会为仓库增加License说明,没有意识去做,也没有想过是否有相关的风险,或者是别人是否能够在他们自己的项目中引用你提供的代码。
今天,我们就来了解一下github上的常见的各种开源协议。
首先,如果没有任何开源License,他人有权限引用你的代码码?
没有。没有证书说明,默认代码作者保留了代码使用权,他人无权使用。
Github上常见的License都有哪些呢?
- MIT
如果你只想安静的写代码,选择MIT吧。
MIT License 是一个宽松的协议,它允许别人用你的代码做任何事情,但必须保证你的所有权,并且你无须承担代码使用产生的风险。
- Apache License 2.0
如果你想要保留自己的专利,同时也愿意大家放心使用,选择Apache License 2.0吧。
Apache License 2.0 与 MIT License 比较类似, 但提供了专利贡献者的明确授权,使用者需要放置版权说明。
- GNU GPLv3
如果你关心项目分享与改进,比较在意使用方的情况,选择GNU吧。
GNU GPLv3 是一个Copyleft协议,所有使用了你源代码的人都必须按照相同的协议提供源代码, 使用者需要放置版权说明,协议比较激进和严格。
License对比说明
如何在github项目中设置License?
第一种,在项目根目录的创建的LICENSE.txt或者LICENSE.md,将证书内容放置到文件中。
第二种,添加在README.md文件中,如:This project is licensed under the terms of the MIT license.
参考文档:
欢迎关注公号:程序员的金融圈
一个探讨技术,金融,赚钱的小圈子,为你提供最有味道的内容!