许 多开发者和设计者但愿把他们的做品做为开源项目共享,他们但愿其余人可以利用和共享他们的代码。 而各类开源社区就是由于这个缘由而充满活力。开源软件能够用于你能想象获得的任何应用程序,许多web设计人员使用开源软件做为开发基础(例如 WordPress,Drupal等等许多CMS系统都是开源的)。web
可是许多开发者和设计者并无对开源License有清楚的了解,不清楚当他们选择开发本身的源代码时,他们有什么权利。若是不知道明确的 License的内容,他们就不知道如何作出最明智的选择,如何作对他们最有利。服务器
对于中国的开发者来讲,由于中国发达的盗版文化,泛滥的盗版软件,大部分人恐怕都彻底没有License或者版权这个概念,都是奉行拿来主义。若是 咱们一直都是这样的话,中国软件何来进步。因此对于国内的开发者来讲,第一课就是应该学习如何使用和遵照License。学习
许多混乱就始于你不知道License究竟是什么,到底有什么含义。当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著做权。License只是授予他们于特定权利来使用你的产品。网站
License只是把你的做品释放到公有领域,或者给各个拷贝赋予权限。也意味着你放弃了版权收入,别人也没有义务把你列为原做者或贡献者。spa
开放源代码许可协议更容易为他人做出贡献,而没必要寻求特别的许可。它也能够保护你做为原创者的权利,至少确认了你的贡献。它还能够保证你的工做不 为别人所剽窃。开放源代码
GNU General Public License (GPL)的多是开源项目最经常使用的许可证。GPL赋予和保证了开源项目开发者普遍的权利。基本上,它容许用户合法复制,分发和修改软件。 这意味着你能够:设计
复制软件到本身的服务器,客户端的服务器,你本身的电脑,几乎任何你想要的地方,并且没有数量限制。blog
发布你想要的软件,例如,在你的网站提供下载连接,刻成光盘,打印出来等等。ip
若是你想在向别人提供软件时收费,如设置在别人的网站上或者其余用途时。GPL容许你这么作,可是你必须给客户提供一个GPL副本,告诉 他们能够在其余地方获得免费版本。固然最好在此以前,告诉客户,你为何收费。开发
若是你想添加或删除功能,没问题。若是想在其余项目中使用部分代码,也是能够的,可是惟一的限制是此项目也必须按GPL发布。
商业软件不能使用GPL协议的代码。
还 有另外一个GNU License:GNU Lesser General Public License (LGPL)。比起GPL它授予的权限较少。通常来讲,LGPL比较适合链接到非GPL或者非开源文件的库文件。因为GPL的规定,使用到部分GPL代码 的软件,必须也使用GPL,开发人员不能使用GPL来开发收费软件或者专有软件。LGPL则没有这方面的要求,不要求使用与部分代码相同的 License。
商业软件可使用,但不能修改LGPL协议的代码。
BSD License与其余自由软件License相比,如GPL,限制更少。可是请注意到BSD License两种版本之间的差异:New BSD License/Modified BSD License 和Simplified BSD License/FreeBSD License。它们二者都是于GPL兼容的自由软件License。
New BSD License (”3-clause license”) 能够用于任何做为版权声明和保证许可的免责声明的目的,能够经过无限长的再分发来得以维持,也就是说若是再发布的产品中包含源代码,则在源代码中必须带有 原来代码中的BSD协 议。它还有一个特殊限制条款,不用特别的许可就是限制使用派生工做的工做者名字,也就是说不能够用开源代码的做者/机构名字和原来产品的名字作市场推广。
New BSD License和Simplified BSD License的主要区别是,后者忽略了非承认条款。
商业软件可使用,也能够修改使用BSD协议的代码。
MIT是和BSD同样宽松的许可协议,做者只想保留版权,而无任何其余了限制.也就是说,你必须在你的发行版里包含原许可协议的声明,不管你是以二 进制发布的仍是以源代码发布的。
商业软件可使用,也能够修改MIT协议的代码,甚至能够出售MIT协议的代码。
Mozilla Public License 1.1 (MPL)协议容许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种受权维护了商业软件的利益,,它要求基于这种软件得修改无偿贡献 版权给该软件。这样,围绕该软件得全部代码得版权都集中在发起开发人得手中。但MPL是容许修改,免费使用得。MPL软件对连接没有要求。
商业软件可使用,也能够修改MPL协议的代码,但修改后的代码版权归软件的发起者。
CDDL(Common Development and Distribution License,通用开发与销售许可)开源协议,是MPL(Mozilla Public License)的扩展协议,它容许公共版权使用,无专利费,并提供专利保护,可集成于商业软件中,容许自行发布许可。
商业软件可使用,也能够修改CDDL协议的代码。
Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD相似,一样鼓励代码共享和尊重原做者的著做权,一样容许代码修改,再发布 (做为开源或商业软件)。须要知足的条件:
Apache Licence也是对商业应用友好的许可。使用者也能够在须要的时候修改代码来知足须要并做为开源或商业产品发布/销售。
商业软件可使用,也能够修改使用Apache协议的代码。
Eclipse Public License(EPL)是一个与CPL相相似的许可证,任何扩展自Eclipse源码的代码也必须是开源的。
Creative Commons(CC)的许可证不太开放源代码受权,它们一般用于设计项目。 CC许可证有着宽广的定义,每一个定义都会授予必定的权利。它有四个基本部分,能够单独或者组合使用。下面是部分概述:
做者必须是做品的原创者。 除此以外,做品能够修改,分发,复制和以其余方式使用。
工做能够修改,分发等等,但必须在一个许可证下。
能够修改,分发等,但不用于商业目的。 关于什么是“商业”,说法比较含糊(没有提供明确的定义),所以您可能须要在本身的项目中澄清这一点。
这意味着您能够复制和分发许可工做,但你不能以任何方式修改,或在原有的基础开发。
商业软件的使用要听从CC协议的具体规定,最严格的许可证将是“署名,非商业,不能修改”的受权。这意味着你能够自由 共享的工做,但不能改变它,你必须把它归功于原创者。
Common许可证有一些细节性的规定值得参考:
商业软件可使用,也能够修改Common协议的代码,但要承担代码产生的侵权责任。
原贴地址:http://blog.163.com/work_laoshu/blog/static/11488577220102292153886/