iOS 進(jìn)階篇-上傳Lib到CocoaPods

一、前言

最近這兩天將分享都是CocoaPods相關(guān),內(nèi)容比較枯燥偏向于語法方面和工具方面,但是磨刀不負(fù)砍柴工。如果連cocoaPods都不會使用未免太low!
首先再上一篇《關(guān)于CocoaPods》主要介紹的都是關(guān)于CocoaPods的環(huán)境安裝部分。如果遇到問題,通常無非就是從ruby -v 到 gem -v 再到 pod --version把對應(yīng)的版本都升級到最新的版本基本問題都不到。完成這部分工作,配合著Podfile的語法就能夠很方便的使用別人的lib。但是當(dāng)我們自己有寫的不錯的lib需要和別人分享的時候,那我們又該怎么做呢?
先附上:CocoaPod的官網(wǎng)地址:https://blog.cocoapods.org

二、CocoaPods上傳的流程

CocoaPods的上傳流程圖

1. 首先注冊trunk,當(dāng)然注冊之前請保證你的CocoaPods的版本足夠新,如果不知道怎么操作的請參考的為文章上篇,《關(guān)于CocoaPods篇》

sudo gem install cocoapod

注冊很簡單,僅僅需要在終端中輸入一下命令(郵箱,名字,請保證郵箱能接收到郵件)

pod trunk register linxi_njupt@163.com 'cslmark' --verbose

到了這一步僅僅后需要郵箱激活.png

到郵箱中點擊鏈接就能完成激活,之后以下命令來驗證是否激活成功

pod trunk me

驗證激活操作是否成功

2. 配置Podspec文件

a. 關(guān)于PodSpec文件

從字面上也能理解Pod+Specification類似于PodFile的配置文件也具有自己的語法。因為
簡單地講就是讓CocoaPods搜索引擎知道你的代碼的作者、版本號、源代碼地址、依賴庫等信息的文件。任何支持CocoaPods的開源代碼都必須有podspec文件。CocoaPods在github中用一個repo來管理所有支持CocoaPods的開源代碼:https://github.com/CocoaPods/Specs。

b. 怎么創(chuàng)建Podspec文件(其中:SLStatisticsView 為你創(chuàng)建的文件名)

pod spec create SLStatisticsView

3. 接下來的主要是設(shè)置一個github倉庫

具體的步驟http://blog.csdn.net/wzzvictory/article/details/20067595
有非常詳細(xì)的記錄,跟著里面的第一第二步實現(xiàn),其他內(nèi)容有興趣的可以看看。

4. 接下來就是寫podSpec文件

主要把握幾個點:

s.name = "SLStatisticsView"
s.version = "0.1.0"
s.summary = "Offer a easy to built a statisticsView For iOS"
s.description = <<-DESC
It is a marquee view used on iOS, which implement by Objective-C.
DESC
s.homepage = "https://github.com/cslmark/SLStatisticsView"
s.license = "MIT"
s.author = { "cslmark" => "chensl@hadlinks.com" }
s.platform = :ios, "7.0"
s.source = { :git => >"https://github.com/cslmark/SLStatisticsView.git", :tag => "#{s.version}", :commit => "2873617a0b0967b5c6a560b3570b942ed336978e" }
s.framework = "Foundation","UIKit"
s.requires_arc = true

5. 驗證和上傳,

首先是cd 到對應(yīng)的目錄下
pod lib lint SLStatisticsView.podspec

失敗的情況下.png

也可以使用該命令這樣可以看到具體失敗的細(xì)節(jié)
pod lib lint SLStatisticsView.podspec --verbose

成功的情況下

驗證通過之后使用以下命令把源碼push到CocoaPods上

pod trunk push SLStatisticsView.podspec

上傳成功
版本更新push成功

6. 附上我的改DEMO工程的信息

gitHub地址: https://github.com/cslmark/SLStatisticsView
此外其中更新的新的版本大體也是重新push的過程,包括更改git上的tag值,重寫podSpec里面的s.version, commit (里面的內(nèi)容是和可以用git log里面的哈希值對應(yīng))。然后重復(fù)第5小步,更新成功的之后將會出現(xiàn)的截圖,我這邊也已經(jīng)上傳。

以下是我這個庫是實現(xiàn)的效果圖,有需要用到類似圖表的可以下載

pod 'SLStatisticsView', '~> 0.1.1'


SLStatisticsViewDemo

三、常見問題的解答

  • syntax error 比如在 iOS 7.0 出現(xiàn) "^" 的語法錯誤
    特別注意不要用MAC自帶的文本編輯器打開,文本編輯器會不自覺地的英文的""改成中文的 ”“ 找到出錯的地方,最好使用終端打開編輯,使用到命令如下(編輯,退出文檔, 插入, 退出編輯)

Vim SLStatisticsView.podspec
wq
I
Ese

四、附錄

經(jīng)常使用的命令行

列舉所有該git的tag號
git tag
只想得到1.4.2序列的標(biāo)簽
git tag -l v1.4.2.*
創(chuàng)建帶有注釋的標(biāo)簽,顯示詳情的標(biāo)簽
git tag -a v1.4 -m 'version 1.4'
git show v1.4
增加標(biāo)簽和刪除標(biāo)簽
git tag '1.0.0'
git push –tags
git push origin --delete tag
git

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、創(chuàng)建的github倉庫原文地址 1 進(jìn)入Github網(wǎng)站www.github.com登陸自己的賬號后 2 建立...
    freesan44閱讀 4,127評論 2 12
  • 項目組件化、平臺化是技術(shù)公司的共同目標(biāo),越來越多的技術(shù)公司推崇使用pod管理第三方庫以及私有組件,一方面使項目架構(gòu)...
    swu_luo閱讀 22,873評論 0 39
  • Ruby 安裝 要安裝cocospods 首先需要安裝ruby,可以先安裝xcode,再安裝macport ,最后...
    山天大畜閱讀 2,136評論 0 1
  • 一、創(chuàng)建自己的github倉庫 CocoaPods都托管在github上(官方鏈接為: https://githu...
    coderTian閱讀 2,745評論 4 7
  • 雖然你不是禮物,但喜歡你的人多了,我也愿意分享給喜歡你的人。 總有一種情感,很舍不得,但終歸還是讓更多的人喜歡比較...
    風(fēng)吹麥子閱讀 347評論 0 0

友情鏈接更多精彩內(nèi)容