iOS开发iOS 开源项目

创建自己的开源框架到CocoaPods

2017-07-19  本文已影响10人  Andy__M

本文以创建开源框架AMKits到CocoaPods为示例。
项目地址:https://github.com/AndyM129/AMKits

创建开源库

Pod lib create

首先,cd到想要创建的目录执行:

cd /Users/andy/Workspace/Developer/GitHub
pod lib create AMKits

过程中会想你问几个问题:

  1. What language do you want to use?? [ Swift / ObjC ]
  2. Would you like to include a demo application with your library? [ Yes / No ]
  3. Which testing frameworks will you use? [ Specta / Kiwi / None ]
  4. Would you like to do view based testing? [ Yes / No ]
  5. What is your class prefix?

以上问题可根据自己需求选择答案,1为项目中主要使用的语言,2为是否需要在工程中加一个Demo工程,3为需要使用的测试库,4为是否基于View测试,5是项目使用的类的前缀。目前建议选择1.Objc,2:Yes,3:None,4:No,5:AMK。

在Github上创建项目

打开https://github.com/new新建代码库,然后将刚刚通过Pod创建的本地代码库推到github上来。

cd /Users/andy/Workspace/Developer/GitHub/AMKits
git remote add origin git@github.com:AndyM129/AMKits.git
git push -u origin master

Permission denied (publickey).

fatal: Could not read from remote repository.

Please make sure you have the correct access rights

and the repository exists.

若提示如上信息,则需要重新创建ssh key:

  1. 执行ssh-keygen以创建ssh key
  2. 然后就是输入密码(即 passphrase,建议都默认)
  3. 执行cat ~/.ssh/id_rsa.pub将ssh key输出后复制
  4. 打开自己github的右上角edit your profile 里找到ssh key,点击add ssh key,把ssh key粘贴在这里,输入title(随便填),接着就可以继续push了~

发版

编辑podspec文件(按需修改version参数)

Pod::Spec.new do |s|
  s.name             = 'AMKits'
  s.version          = '0.1.0'
  s.summary          = 'Summary of AMKits.'
  s.description      = <<-DESC
                        A description of AMKits.
                       DESC
  s.homepage         = 'https://github.com/AndyM129/AMKits'
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
  s.author           = { 'Andy__M' => 'andy_m129@baidu.com' }
  s.source           = { :git => 'https://github.com/AndyM129/AMKits.git', :tag => s.version.to_s }
  s.social_media_url = 'http://www.jianshu.com/u/28d89b68984b'
  s.ios.deployment_target = '8.0'
  s.source_files = 'AMKits/Classes/**/*.{h,m}'
  s.resource_bundles = {
    'AMKits' => ['AMKits/Assets/**/*.png']
  }
  s.public_header_files = 'AMKits/Classes/**/*.h'
  s.frameworks = 'UIKit'
end

push文件

# 更新pod
cd /Users/andy/Workspace/Developer/GitHub/AMKits/Example
pod update --no-repo-update

# push文件
cd /Users/andy/Workspace/Developer/GitHub/AMKits
git add .
git commit -am "Update and prepare to publish."
git push

# 打tag
git tag 0.1.0
git push --tags

提交

# 校验
cd /Users/andy/Workspace/Developer/GitHub/AMKits
pod spec lint AMKits.podspec --allow-warnings

# 如果没有注册过Trunk需要注册下,然后校验收到的邮件,然后执行 pod trunk me 命令可以检验注册结果
pod trunk register andy_m129@163.com "Andy Meng"

# 提交
pod trunk push AMKits.podspec

# 然后开源组件就被推送到 CocoaPods 主仓库中了,可以执行以下命令验证下
pod search AMKits

# 建议发版后再创建并push到对应version分支上,以保存代码
git checkout -b 0.1.0
git push --set-upstream origin 0.1.0

注意事项

  1. 在创建pod之前,最好先在CocoaPods 指定的网页上查一下,这个名字有没有被占用,我就踩了这个坑——原本命名是AMKit的,无奈已被抢注,只好改名为AMKits了。。

相关参考

最后

原文地址:http://www.jianshu.com/p/f39a22252e5f
转载请注明出处。

上一篇下一篇

猜你喜欢

热点阅读