CocoaPods與SVN的配合使用(一)

現(xiàn)在越來越多的iOS項目使用CocoaPods來管理第三方庫酣溃,CocoaPods配置簡單,使用方便,為我們省去了手動添加第三方庫所產(chǎn)生的各種問題和麻煩絮蒿。網(wǎng)上很多文章介紹了如何使用CocoaPods引入第三方庫,如何創(chuàng)建支持CocoaPods的第三方庫叁鉴,這些文章教程所演示的第三方庫大多是基于git的土涝,關(guān)于CocoaPods和SVN配合使用的資料較少,接下來我就介紹一下CocoaPods和SVN的配合使用幌墓。

咱們就先從創(chuàng)建支持CocoaPods的開發(fā)庫說起但壮,這里我假設(shè)你已經(jīng)安裝好了CocoaPods:

1. 創(chuàng)建開發(fā)庫工程

打開"終端.app",使用pod lib create XXX來創(chuàng)建開發(fā)庫工程。

創(chuàng)建開發(fā)庫工程

按步驟回答提示的問題常侣,之后會自動創(chuàng)建好工程

這一步可能出現(xiàn)的終端報錯
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in \require': cannot load such file -- colored2 (LoadError)`

提示缺少 colored2蜡饵, 可使用sudo gem install colored2 進(jìn)行安裝, 提示缺什么就裝什么胳施。

2. 正確配置開發(fā)庫的SVN目錄結(jié)構(gòu)

將剛剛創(chuàng)建好的工程放入SVN的trunk目錄下溯祸, 注意此時trunk應(yīng)為根目錄,trunk下存在的文件有 XXX.podspec、XXX文件夾焦辅、README.md博杖、LICENSE、Example文件夾筷登、_Pods.xcodeproj剃根,如果CocoaPods在trunk中找不到.podspec文件,后面運行更新時會報錯仆抵。

SVN文件夾結(jié)構(gòu).png

3. 完成開發(fā)庫的配置和開發(fā)

進(jìn)入剛剛創(chuàng)建好的工程目錄打開 /Example/XXX.xcworkspace

Xcode工程結(jié)構(gòu).png

在Xcode目錄中 找到Pods/Development Pods/XXX/XXX/Classes 目錄(可通過查找ReplaceMe.m找到該目錄)跟继,將庫文件放入其中,如果該庫需要依賴其他開源庫可在XXX/Podspec Metadata/XXX.podspec中編輯,重要的編輯項有s.version=組件版本镣丑,s.source=組件地址舔糖,s.dependency=需要依賴的其他庫

podspec文件細(xì)節(jié).png

編輯完成后,進(jìn)入XXX.podspec的上一層目錄莺匠,使用pod lib lint校驗金吗,根據(jù)校驗結(jié)果修改XXX.podspec直到校驗通過。

驗證podspec文件.png

打開終端 進(jìn)入Example文件夾使用 pod install --no-repo-update 命令更新依賴庫趣竣,之后即可進(jìn)行組件的開發(fā)摇庙。
開發(fā)組件.png

開發(fā)完成后在Xcode的Example For XXX 文件夾中進(jìn)行庫文件的測試。

測試組件.png

測試通過后遥缕,上傳svn 卫袒,其中Example/Pods文件夾的內(nèi)容或依賴庫可以通過命令pod install --no-repo-update生成,可不上傳此文件夾中的內(nèi)容或依賴庫单匣,當(dāng)對組件進(jìn)行再次開發(fā)時夕凝,執(zhí)行命令pod install --no-repo-update即可保證編譯正常。

需要上傳的文件.png

最后根據(jù)在XXX.podspec中填寫的s.version的值户秤,在SVN的tag中打包為相應(yīng)版本码秉。下圖是打包tag的步驟(以Cornerstone為例)

創(chuàng)建tag步驟.png

還有創(chuàng)建完tag的目錄結(jié)構(gòu),創(chuàng)建tag并保持下圖的目錄結(jié)構(gòu)非常重要鸡号,pod實際是拉取目錄 XXX/tags/0.1.0(0.1.0是版本號文件夾转砖,請根據(jù)自己的設(shè)置進(jìn)行變化)下的文件。


創(chuàng)建完Tag之后的SVN目錄結(jié)構(gòu).png

下面是在其他工程中使用剛剛配置好的開發(fā)庫

1. 使用CocoaPods引入開發(fā)庫

在已有工程中的Podfile文件中編輯
pod 'XXX',:svn =>'svn://YourSvnPath/XXX',:tag =>'0.1.0'
可參考 Profile文件 Pod語法
然后使用 pod install --no-repo-update進(jìn)行安裝鲸伴。

有些同學(xué)的svn地址是https的網(wǎng)址府蔗,沒有配置用戶名和密碼前會導(dǎo)致無法下載,解決方法是需要你去終端里連接一下svn汞窗,并輸入用戶名和密碼姓赤。
比如,在終端里運行svn checkout https://YourSvnPath/XXX 會提示你是否信任該https證書然后要求你輸入用戶名和密碼杉辙,校驗成功后模捂,接著在該終端里返回到項目目錄,使用 pod install --no-repo-update安裝即可蜘矢。

引入開發(fā)庫.png

更新后可以看到XXX庫已經(jīng)被下載下來了狂男,現(xiàn)在你就可以在工程中使用這個開發(fā)庫了

CocoaPods與SVN的配合使用(二)中,我會繼續(xù)介紹如何使用CocoaPods將源碼庫打包為靜態(tài)庫framework或.a文件品腹,并通過CocoaPods引入到現(xiàn)有工程的構(gòu)建方式岖食,這種方式適用于不希望提供給使用者源碼的情況。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末舞吭,一起剝皮案震驚了整個濱河市泡垃,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌羡鸥,老刑警劉巖蔑穴,帶你破解...
    沈念sama閱讀 212,222評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異惧浴,居然都是意外死亡存和,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,455評論 3 385
  • 文/潘曉璐 我一進(jìn)店門衷旅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捐腿,“玉大人,你說我怎么就攤上這事柿顶∏研洌” “怎么了?”我有些...
    開封第一講書人閱讀 157,720評論 0 348
  • 文/不壞的土叔 我叫張陵嘁锯,是天一觀的道長宪祥。 經(jīng)常有香客問我,道長猪钮,這世上最難降的妖魔是什么品山? 我笑而不...
    開封第一講書人閱讀 56,568評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮烤低,結(jié)果婚禮上肘交,老公的妹妹穿的比我還像新娘。我一直安慰自己扑馁,他們只是感情好涯呻,可當(dāng)我...
    茶點故事閱讀 65,696評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著腻要,像睡著了一般复罐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上雄家,一...
    開封第一講書人閱讀 49,879評論 1 290
  • 那天效诅,我揣著相機與錄音,去河邊找鬼。 笑死乱投,一個胖子當(dāng)著我的面吹牛咽笼,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播戚炫,決...
    沈念sama閱讀 39,028評論 3 409
  • 文/蒼蘭香墨 我猛地睜開眼剑刑,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了双肤?” 一聲冷哼從身側(cè)響起施掏,我...
    開封第一講書人閱讀 37,773評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎茅糜,沒想到半個月后七芭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,220評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡蔑赘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,550評論 2 327
  • 正文 我和宋清朗相戀三年抖苦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片米死。...
    茶點故事閱讀 38,697評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡锌历,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出峦筒,到底是詐尸還是另有隱情究西,我是刑警寧澤,帶...
    沈念sama閱讀 34,360評論 4 332
  • 正文 年R本政府宣布物喷,位于F島的核電站卤材,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏峦失。R本人自食惡果不足惜扇丛,卻給世界環(huán)境...
    茶點故事閱讀 40,002評論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望尉辑。 院中可真熱鬧帆精,春花似錦、人聲如沸隧魄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,782評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽购啄。三九已至襟企,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間狮含,已是汗流浹背顽悼。 一陣腳步聲響...
    開封第一講書人閱讀 32,010評論 1 266
  • 我被黑心中介騙來泰國打工曼振, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蔚龙。 一個月前我還...
    沈念sama閱讀 46,433評論 2 360
  • 正文 我出身青樓拴测,卻偏偏與公主長得像,于是被迫代替她去往敵國和親府蛇。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,587評論 2 350

推薦閱讀更多精彩內(nèi)容