結合了好幾個文章才完成上傳,索性自己再簡單總結一下吧。細節比較少但比較全面吧。尤其是上傳成功后pod search 不到很尷尬。
覺得還得了解原理為先,還是先看看原理圖吧
1.注冊賬號:
pod trunk register ?xxx@163.com ? 'userName' ?--verbose
注意:注冊完了,回收到驗證郵箱,驗證一下就可以接著做了。
2.創建Spec文件,命名:項目名.podspec
可以復制現有的模板,也可以命令行創建,初次創建的話建議使用命令行,因為可以了解更加全面,模板都是刪減過的。
命令行:pod spec create YWShowView
我的模板:
Pod::Spec.new do |s|
s.name? ? ? ? = "YWShowView"
s.version? ? ? = "0.0.1"
s.summary? ? ? = "a simple demo for show base subview"
s.description? = <<-DESC
push subview from bottom
DESC
s.homepage? ? = "https://github.com/YWSawyer/YWShowView"
s.license? ? ? = "MIT"
s.author? ? ? ? ? ? = { "YWSawyer" => "yuan_wei_1@163.com" }
# s.authors? ? ? ? ? ? = { "YWSawyer" => "yuan_wei_1@163.com" }
# s.social_media_url? = "http://twitter.com/YWSawyer"
s.platform? ? = :ios, "8.0"
s.ios.deployment_target = "8.0"
s.source? ? ? = { :git => "https://github.com/YWSawyer/YWShowView.git", :tag => s.version }
s.source_files? = "YWShowView", "*.{h,m}" ??
# s.exclude_files = "Classes/Exclude"
# s.public_header_files = "Classes/**/*.h"
# s.resource? = "icon.png"
# s.resources = "Resources/*.png"
# s.preserve_paths = "FilesToSave", "MoreFilesToSave"
# s.framework? = "SomeFramework"
s.frameworks = 'Foundation', 'UIKit'
# s.library? = "iconv"
# s.libraries = "iconv", "xml2"
s.requires_arc = true
# s.xcconfig = { "HEADER_SEARCH_PATHS" => "$(SDKROOT)/usr/include/libxml2" }
# s.dependency "JSONKit", "~> 1.4"
end
s.source_files:注意這里就可以了,這個是你要開源的路徑,從倉庫的子目錄開始寫。
tag => s.version 指定的版本,git上打一個名為0.0.1的tag,要不然不好找到具體項目
3.驗證podspec文件是否有效。
命令行:pod lib lint YWShowView.podspec? --allow-warnings
警告信息可以忽略但錯誤信息必須修改。一般錯誤信息提示還是比較全面的,根據錯誤信息就可以更改了。
成功后如下圖所示
4.推送到遠程的cocoapods
命令行:pod trunk push YWShowView.podspec --allow-warnings
5.刷新一下本地的pod
命令行:pod repo update
此時你還看到如下圖所示。
6.查找你的庫是否真的已經存在
命令行:pod search YWShowView
這時候尷尬的地方就來了,明明已經update過了,而且也已經被加入了,但還是搜不出來,真的好尷尬。
解決方法:刪除本地pods的索引,重新pod serarch
命令行:rm ~/Library/Caches/CocoaPods/search_index.json
然后重新搜索
命令行:pod search YWShowView
參考博客: