Cocoa包管理器之CocoaPods详解 (3)

  

Cocoa包管理器之CocoaPods详解

 

 

四、创建并发布自己的开源库

 上面三个部分介绍了如何在自己的项目中安装和使用CocoaPods,接下来这部分就来介绍一下如果将自己的开源的库接入到CocoaPods中,可以让其他人直接在Podfile中直接配置后,pod install就可以使用。下方是这一系列的操作。

1、创建自己的开源仓库

下方以Github为例,首先我们在Github上创建了一个新的仓库用来容纳我们要开源的代码。如下所示:

  

Cocoa包管理器之CocoaPods详解

 

在New Repository时, 选择创建公共仓库,然后勾选上创建README,最后别忘了并选择开源协议。此处我们选择的是MIT协议,下方会对Github上支持的开源协议进行介绍。

  

Cocoa包管理器之CocoaPods详解

 

2、主流开源协议介绍

Github中支持了主流的几种开源协议,如:Apache、GPL、MIT、BSD、Mozilla等下方罗列了Github上支持的开源协议,具体介绍如下:

Apache License 2.0 :Apache Licence是著名的非盈利开源组织Apache采用的协议。简单的说,遵循该协议标志着自己希望自己的专利能在开源免费使用的同时,保留自己在开源产品中的专利权益。同样,该协议要求使用者必须保留你的版权信息。

MIT License (麻省理工学院许可证) : 一个简短、宽松、自由的协议。该协议允许人们使用你的代码,但必须要保留你的版权信息。与此同时,并不会给你带来任何责任和风险。

BSD(Berkly Software Distribution) : 也是一个比较宽泛自由的协议,该协议允许其他人修改代码,并进行二次发布,并且可以用于商业活动。但是要保留原有代码的BSD协议,并且不能以原作者或者机构的名字来做市场推广。(Unix)

BSD 2-Clause "Simplified" License : 简化版本的BSD协议, 修改版本必须保持其原始版权声明。

 BSD 3-Clause "New" or "Revised" License : 新的或者经过重新修订的BSD协议, 修改版本必须保持其原始版权声明。未经许可不得使用原作者或公司的名字做宣传。

GPL (GNU General Public License - GNU通用公共许可协议) :  如果你希望别人在分享的自己的作品之后,也必须遵循相同的协议,也必须是开源和免费,那么就选择GPL协议。也就是说只要你用了任何该协议的库、甚至是一段代码,那么你的整个程序,不管以何种方式链接,都必须全部使用GPL协议、并遵循该协议开源。商业软件公司一般禁用GPL代码,但可以使用GPL的可执行文件和应用程序。

GNU General Public License v2.0 

GUN General Public License v3.0 

GNU Affero General Public License v2.0 : Affero通用公共许可,基于GPL的扩充。即Affero GPL,是GPL的更严格版本。只要你用了任何该协议的库、甚至是一段代码,那么运行时和它相关的所有软件、包括通过网络联系的所有软件,必须全部遵循该协议开源。据律师说,它的要求范围连硬件都包括。所以,一般公司通常禁用任何AGPL代码。

LGPL : GNU Lesser General Public License - GNU宽松的通用公共许可协议,就是GPL针对动态链接库放松要求了的版本,即允许非LGPL的代码动态链接到LGPL的模块。注意:不可以静态链接,否则你的代码也必须用LGPL协议开源。Mozilla Public License 2.0 : MPL - 修改版本必须保持其原始版权声明。如果发布了编译后的可执行文件,那么必须让对方可以取得MPL协议下程序的源码。

GNU Lesser General Public License v2.1 

GNU Lesser General Public License v3.0 

The Unlicense : 在许多国家,默认版权归作者自动拥有,所以Unlicense协议提供了一种通用的模板,此协议表明你放弃版权,将劳动成果无私贡献出来。你将丧失对作品的全部权利,包括在MIT/X11中定义的无担保权利。

Eclipse Public License 2.0 : EPL由Eclipse基金会应用于名下的集成开发环境Eclipse上, 商业软件可以使用,也可以修改EPL协议的代码,但要承担代码产生的侵权责任。

  

Cocoa包管理器之CocoaPods详解

 

3、如何去选择你的开源协议

下图是从网上拿过来的,可以根据下方的具体情况来选择相关的开源协议。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpxgfz.html