首发地址:http://www.gcssloop.com/tips/choose-license
前一段时间知乎上关于版权问题的讨论有不少,例如这个 新浪微博上的「知乎大神」是谁?涉嫌侵权吗?, 而且最近喜马拉雅FM也因为背景音乐版权问题导致很多栏目被下架和推迟更新,而我作为一个喜欢分享的魔法师,也遇到过一些版权相关方面的问题,刚好借此机会向大家科普一下开源协议和知识共享协议。
开源协议
相信很多小伙伴在开发的时候都默认遵循 不重复造轮子(偷懒) 这一原则,只要有了思路就马上在GitHub搜索一下,看看是否有人已经做了,如果已经有做好的,自然就不客气啦,拿过来修改一下就能用,不由得心中暗喜,又省了好多时间能用来把妹(LOL)。然而你可能没注意到,在诸多的开源代码中存在一些陷阱(约束),就是开源协议,下面就带大家了解一下开源协议。
为什么要添加开源协议?
首先是对作者的保护,防止知识成果被恶意利用。
- 开源协议中一般都包含免责声明(禁止代码的作者承担代码使用后的风险及产生的后果),比如你开源了一个破解智能锁的代码,如果有人利用这个去盗窃导致他人损失,你是无需承担责任的。
其次是对使用者的保护,方便使用者。
- 使用者一看就知道自己允许进行哪些操作,不允许进行哪些操作。
- 未添加协议的代码默认是作者保留所有权利的(对此不同国家的法律可能稍微存在区别),这就像一颗定时炸弹,如果你在项目中使用了这一份没有协议的代码,原作者只要能证明你未经许可使用了他的代码,是能够起诉你的。
如何选择合适的开源协议?
由于开源协议种类众多,作为普通人很难搞懂它们之间的区别,即便是常见的协议大家也不完全知道协议的内容,那么如何快速的选择一款适合自己的协议呢?如果你是一个怕麻烦的人,下面的建议或许对你有有帮助。
目前使用最多的是MIT协议,而我(GcsSloop)常用的则是