在github中闲逛,宝藏多福利好。不过心里或许总有小忐忑,这么多开源项目,我的产品里能不能用呀!
其实想知道项目能不能用看下项目的开源许可证就清楚了(即使是非软件产品比如数据、媒体、资料等也可以通过开源许可证知道它们的可用范围)。
开源许可证
先举两个例子,这两位应该是最常用的许可证了:
如果你的工作是在开源社区开发项目,使用社区常用的许可证就可以了。
如果希望商用则特别要注意下,许可的范围。以下都是常用许可证类型的概要信息:
Apache Licese @ opensource.org
Apache License 2.0 :商业软件最爱, 主要条件是要求保留原始版权和许可声明。同时向贡献者明确授予专利权。使用者可以自由修改,进行商业使用,大型项目可以不同的条款分发,没有开源要求,修改源代码需要记录变更。
BSD 3-Clause "New" or "Revised" license:允许商业发布和销售。使用者可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。主要条件是要求尊重代码作者的著作权,即包含原始版权和免责声明(二进制形式分发必须分发文档中包含版权申明及免责声明),且未经事先特别书面许可,不可以用开源代码的“作者/机构的名字”或“原来产品的名字”做市场推广。
BSD 2-Clause "Simplified" or "FreeBSD" license:比3-Clause少一个条目,去掉了“不可以用开源代码的“作者/机构的名字”或“原来产品的名字”做市场推广。”.
GNU General Public License: 商业软件绕开,GPL不允许修改后和衍生的代码做为闭源的商业软件发布和销售。
GNU Library or "Lesser" General Public License (LGPL):允许商业软件代码动态link到LGPL类库。注意:不可以静态链接,否则你的代码也必须用LGPL协议开源。(即:商业软件可以动态使用,但不能修改)
Mozilla Public License 2.0:修改的版本需要保持原始版权申明。编译版本需和可获得MPL协议下的源码。修改源代码需要记录变更。
Common Development and Distribution License:商业软件可用,也可以修改。可以自行发布许可,允许公共版权使用,提供专利保护,无专利费
Eclipse Public License version 2.0:商业软件可用,也可以修改,无需开源。不过将本程序包含在商业产品中的贡献者需要承担因代码而产生的侵权责任,及对所有其他贡献者的相关损失
一般开源许可证中会说明以下权限、使用条件和责任限制:
CC-BY-4.0
此外还有一些属于非软件许可证:
如果您的项目包含软件和其他部分的混合,您可以通过说明明确各个许可证适用于项目的不同部分。
总结一下:开源许可证存在的主要意义就是保护项目贡献者和使用用户。倘若没有许可证保护,企业和开发人员一般就不会接触项目,开源社区也很难繁荣起来。如果要更全面的了解和选择开源许可证,可以去大本营查看所有已批准的许可证包括:如专用许可证、被取代的许可证或失效的许可证。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删