組件化開發(fā) : pod私有化組件

今天特別開心,終于將pod私有化組件弄會了~


前提條件:我們進行組件化開發(fā),需要使用cocospod管理,那么我們怎么將自己的代碼模塊pod上去肚菠,以供自己和別人使用?

這里我使用的是碼云托管代碼署鸡。項目名稱ModuleA

1.在碼云上創(chuàng)建遠程倉庫地址案糙,如下圖

2.然后在本地創(chuàng)建包,名為ModuleA靴庆,使用sourceTree git clone?https://gitee.com/*****/ModuleA.git

3.然后終端操作

cd 進入ModuleA文件夾下

輸入?pod spec create?ModuleA

4.你就會在ModuleA文件夾下發(fā)現(xiàn)多了一個ModuleA.podspec文件

5.打開ModuleA.podspec文件配置

這里先看一我的目錄截圖:目標(pod ?Category下的文件)

現(xiàn)在看一下ModuleA.podspec文件的配置

Pod::Spec.new do |s|

? s.name? ? ? ? = "ModuleA"

? s.version? ? ? = "0.0.1"

? s.summary? ? ? = "ModuleA 測試私用庫"

? ?s.description? = "A long description of HttpManager."

? s.homepage? ? = "https://www.baidu.com"

? ?s.license? ? ? = "MIT"

? s.source? ? ? = { :git => "https://gitee.com/******/ModuleA.git", :tag => "#{s.version}" }

? s.source_files? = "Category", "Category/**/*.{h,m}"

重要說明一下:

? s.source_files? = "Category", "Category/**/*.{h,m}" ? ?這里的"Category"和上傳的包名一致

?s.description? = "A long description of HttpManager." ? ?描述隨便寫时捌,但一定要有

?s.license? ? ? = "MIT" ?按照這樣寫就可以了

弄完之后,利用sourceTree將代碼push到碼云上去

接下來就是驗證了

podfile 書寫

platform :ios ,'9.0'

target'Test'do

pod'AFNetworking'

pod 'ModuleA', :git => 'https://gitee.com/******/ModuleA.git'

end

然后pod install就OK了

這里說明一下炉抒,如果你建的ModuleA是私有的


以上是私有組件奢讨,別人pod install 需要你的碼云的姓名和密碼,當然使用 pod search 'ModuleA'是無法訪問到的焰薄,那么我們要是想公開自己的組件代碼該如何做呢拿诸?(這里有很多的雷)

1.首先,緊接在昨天的基礎(chǔ)上做改動塞茅,昨天我將組件化代碼放在碼云上亩码,并且這個庫是私有的,接著我在github上新建了了一個ZJModuleB的庫地址野瘦,這里全程用終端去操作具體指令如下:

git clone?https://github.com/successflowers/ZJModuleB.git

cd ZJModuleB

pod spec create?ZJModuleB

配置ZJModuleB.podspec文件

Pod::Spec.new do |s|

? s.name? ? ? ? = "ZJModuleB"

? s.version? ? ? = "1.0"

? s.summary? ? ? = "xxxxx"

s.description? = <<-DESC

? ? ? ? ? ? ? ? ? ? rqwerqwefqewfwfgqwdgfqwegewgrgeeergqeregqergee

?? ? ? ? ? ? ? ? ? DESC

? s.homepage? ? = "https://github.com/successflowers/ZJModuleB.git"

? s.license? ? ? = "MIT"

? s.author? ? ? ? ? ? = { "張敬" => "success_flower@sina.com" }

? # s.platform? ? = :ios

?? s.ios.deployment_target = "9.0"

? s.source_files? = "Classes", "Classes/**/*.{h,m}"

? s.exclude_files = "Classes/Exclude"

發(fā)布公開的庫描沟,需要注冊trunk

具體指令如下

$pod trunk register [Your-Email]'[Your-Name]'--description='[Your-Desc]'

> [Your-Email]: 任意郵件,但是我比較推薦你使用github上的Email

> [Your-Name]: 推薦使用github上使用的Name

> [Your-Desc]: 一個簡單的描述鞭光,往往這個時候我們使用的是自己電腦的一個描述

比如我的

$pod trunk register 1579589762@qq.com "yetongxue" --description= "這是一個測試"

如果發(fā)送成功

你就去郵箱點擊鏈接

然后 $pod trunk me?

輸出如下表示注冊成功

繼續(xù)輸入指令

// 添加所有文件

$ git add .

?// 提交

$git commit -m"Initial AKExtension"

// push到你的遠程倉庫

$ git push

// 接下來就是需要使用到的一個Tag吏廉,這個在你的.podspec中需要配置

$git tag -m"Initial Tag"0.0.1

// 將tag添加至你的遠程倉庫

$ git push --tags

// 進入到.podspec所在目錄

$ pod spec lint

// 如果出現(xiàn)錯誤,需要修改到提示無誤后方可執(zhí)行下一步

$ pod trunk push [NAME].podspec

如果出現(xiàn)惰许,代表成功

??? Congrats

???? ZJModuleB (1.0) successfully published

???? January 9th, 20:55

???? https://cocoapods.org/pods/ZJModuleB

???? Tell your friends!

// 先更新一下repo$ pod repo update

// 查找一下你提交的pod

$pod search'ZJModuleB'

剛提交后項目用pod search命令會搜不到席覆,因為本地的索引沒有更新,使用下面命令刪除索引文件

rm ~/Library/Caches/CocoaPods/search_index.json

-> ZJModuleB (1.0)

?? xxxxx

?? pod 'ZJModuleB', '~> 1.0'

?? - Homepage:https://github.com/successflowers/ZJModuleB.git

?? - Source:? https://github.com/successflowers/ZJModuleB.git

?? - Versions: 1.0 [master repo]

最后汹买,筆者文筆粗糙佩伤,思想深度比較淺聊倔,莫見笑,有問題可留言探討畦戒,我會第一時間回復(fù)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末方库,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子障斋,更是在濱河造成了極大的恐慌,老刑警劉巖徐鹤,帶你破解...
    沈念sama閱讀 222,378評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件垃环,死亡現(xiàn)場離奇詭異,居然都是意外死亡返敬,警方通過查閱死者的電腦和手機遂庄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來劲赠,“玉大人涛目,你說我怎么就攤上這事×菖欤” “怎么了霹肝?”我有些...
    開封第一講書人閱讀 168,983評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長塑煎。 經(jīng)常有香客問我沫换,道長,這世上最難降的妖魔是什么最铁? 我笑而不...
    開封第一講書人閱讀 59,938評論 1 299
  • 正文 為了忘掉前任讯赏,我火速辦了婚禮,結(jié)果婚禮上冷尉,老公的妹妹穿的比我還像新娘漱挎。我一直安慰自己,他們只是感情好雀哨,可當我...
    茶點故事閱讀 68,955評論 6 398
  • 文/花漫 我一把揭開白布磕谅。 她就那樣靜靜地躺著,像睡著了一般震束。 火紅的嫁衣襯著肌膚如雪怜庸。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,549評論 1 312
  • 那天垢村,我揣著相機與錄音割疾,去河邊找鬼。 笑死嘉栓,一個胖子當著我的面吹牛宏榕,可吹牛的內(nèi)容都是我干的拓诸。 我是一名探鬼主播,決...
    沈念sama閱讀 41,063評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼麻昼,長吁一口氣:“原來是場噩夢啊……” “哼奠支!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起抚芦,我...
    開封第一講書人閱讀 39,991評論 0 277
  • 序言:老撾萬榮一對情侶失蹤倍谜,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后叉抡,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體尔崔,經(jīng)...
    沈念sama閱讀 46,522評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,604評論 3 342
  • 正文 我和宋清朗相戀三年褥民,在試婚紗的時候發(fā)現(xiàn)自己被綠了季春。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,742評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡消返,死狀恐怖载弄,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情撵颊,我是刑警寧澤宇攻,帶...
    沈念sama閱讀 36,413評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站秦驯,受9級特大地震影響尺碰,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜译隘,卻給世界環(huán)境...
    茶點故事閱讀 42,094評論 3 335
  • 文/蒙蒙 一亲桥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧固耘,春花似錦题篷、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至损敷,卻和暖如春葫笼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拗馒。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評論 1 274
  • 我被黑心中介騙來泰國打工路星, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人诱桂。 一個月前我還...
    沈念sama閱讀 49,159評論 3 378
  • 正文 我出身青樓洋丐,卻偏偏與公主長得像呈昔,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子友绝,可洞房花燭夜當晚...
    茶點故事閱讀 45,747評論 2 361

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

  • 最近在學習vue.js的時候發(fā)現(xiàn)堤尾,vue的組件化的思想對于編寫代碼是一個非常有用的事情。 首先為什么需要組件化迁客? ...
    拂曉的云閱讀 7,184評論 6 23
  • 要解除循環(huán)依賴哲泊,引入包管理技術(shù)cocoapods會讓我們更有效率剩蟀。pod不允許組件間有循環(huán)依賴,若有pod ins...
    cs_mark閱讀 2,112評論 0 1
  • #本文供剛接觸代碼庫且瀏覽了其他文章依然摸不著頭腦的同事,借鑒;請代碼庫老司機指點# 最近3天接觸建立自己代碼庫,...
    zheNgHH閱讀 1,075評論 0 0
  • 2018年1月8日切威,星期一,天氣晴丙号,今天和孩子一起去書店買的書先朦,回來孩子開始讀了,看著孩子讀的非常用功犬缨,我非常高興
    大公主145閱讀 116評論 0 0
  • 小時候的事像是印在腦子里喳魏,總是不能忘卻。而留在記憶里的人競是那么鮮和怀薛。德順家是其中的一個刺彩。段德順和我家是斜...
    原粒土豆閱讀 407評論 0 0