CocoaPods 系列之五 Private Pods (譯文)制作私有庫(kù)

CocoaPods 系列之一 制作公開(kāi)庫(kù)
CocoaPods 系列之二 更新公開(kāi)庫(kù)
CocoaPods 系列之三 Podspec 語(yǔ)法說(shuō)明
CocoaPods 系列之四 Podspec subspec
CocoaPods 系列之五 Private Pods(譯文) 制作私有庫(kù)
CocoaPods 系列之六 Private Pods 制作私有庫(kù)從0到1
CocoaPods 系列之七 我遇到的驗(yàn)證不過(guò)
做私有庫(kù)前的知識(shí)準(zhǔn)備:
1 先學(xué)會(huì)制作公開(kāi)庫(kù)胚迫,否則白扯
2 會(huì)使用git

官方文檔傳送門(mén)

使用私有庫(kù)兩種方式茫经,第一種有Spec的庫(kù),第二種不適用私有的spec庫(kù)予弧,我們先來(lái)看第一種

Private Pods

私有庫(kù)

CocoaPods is a great tool not only for adding open source code to your project, but also for sharing components across projects. You can use a private Spec Repo to do this.

CocoaPods是一個(gè)很好用的工具,不僅能添加公開(kāi)代碼仲墨。而且能夠制作私有庫(kù)括荡。

There are a few steps to getting a private pods setup for your project; creating a private repository for them, letting CocoaPods know where to find it and adding the podspecs to the repository.

制作私有庫(kù)的步驟是:創(chuàng)建私有倉(cāng)庫(kù),把podspec添加到倉(cāng)庫(kù)提揍。

1 Create a Private Spec Repo

1 創(chuàng)建私有的Spec Repo

To work with your collection of private pods, we suggest creating your own Spec repo. This should be in a location that is accessible to all who will use the repo.

為了制作私有庫(kù)啤月,我們建議創(chuàng)建你自己的Spec repo。私有庫(kù)的權(quán)限開(kāi)放給需要使用庫(kù)的人劳跃。

注解: 例如cocoapods的官方倉(cāng)庫(kù)https://github.com/CocoaPods/Specs谎仲,把所有的公開(kāi)庫(kù)的PodSpec文件放到倉(cāng)庫(kù)里,相當(dāng)于這是一個(gè)索引庫(kù)刨仑。

You do not need to fork the CocoaPods/Specs Master repo. Make sure that everyone on your team has access to this repo, but it does not need to be public.

2 Add your Private Repo to your CocoaPods installation

2 添加私有庫(kù)到你的電腦本地

命令:
$ pod repo add REPO_NAME SOURCE_URL

執(zhí)行完整個(gè)命令后

$ cd ~/.cocoapods/repos/REPO_NAME
$ pod repo lint .

注解:我在碼云制作了一個(gè)空的倉(cāng)庫(kù)郑诺,然后執(zhí)行
pod repo add Haisheng git@gitee.com:haisenv/test_private_library.git
然后:
cd /Users/XXXX/.cocoapods/repos/Haisheng
執(zhí)行:
pod repo lint .
輸出:
All the specs passed validation.

3 Add your Podspec to your repo

3 添加Podspec文件到你的repo庫(kù)里

Make sure you've tagged and versioned your source appropriately, then run:

確定你已經(jīng)正確的制作了Podspec文件,然后執(zhí)行

$ pod repo push REPO_NAME SPEC_NAME.podspec

注解:這里我使用的是測(cè)試的公開(kāi)課杉武,執(zhí)行了
pod repo push Haisheng HSTestLib.podspec
執(zhí)行這個(gè)步驟后 在我的本地和碼云私有庫(kù)的地址都多了一個(gè)東西(原來(lái)不只是改變本地辙诞,這個(gè)命令還把本地的repo推送到了倉(cāng)庫(kù))如下圖


1.png
2.png

That's it!

Your private Pod is ready to be used in a Podfile. You can use the spec repository with the sourcedirective in your Podfile as shown in the following example:

好了,你的私有庫(kù)已經(jīng)準(zhǔn)備好在Podfile中使用了轻抱。

How to remove a Private Repo

如何移除私有庫(kù)

pod repo remove [name]

再來(lái)看第二種

第一步 把工程寫(xiě)好飞涂,代碼推送到私有庫(kù)上

第二步 pod spec create GoGoGo 創(chuàng)建podSpec文件,配置文件十拣,配置后驗(yàn)證通過(guò)

  • 使用這種方式的時(shí)候一定注意庫(kù)文件和podspec文件一定要放在根目錄封拧,默認(rèn)去根目錄尋找到podSpec文件然后去加載文件去

第三步 在Podfile寫(xiě)入

pod 'GoGoGo' , :git => 'git@gitee.com:haisenv/GoGoGoSdk.git',:branch => 'master'
這里不需要添加source。
使用這種方式夭问,更改代碼后泽西,更新就好,不需要tag缰趋,實(shí)用捧杉。

第四步

 pod  install

原理猜測(cè)

前提使用git管理代碼
一個(gè)使用庫(kù)的指定使用哪個(gè)版本,一個(gè)庫(kù)里那么多版本秘血,所以要指定味抖,或者分支或者tag;一個(gè)是提供庫(kù)的。如何把這倆者連接起來(lái)灰粮,那么podSpec文件就是橋梁仔涩,它規(guī)定了庫(kù)的git地址,分享的庫(kù)文件粘舟,依賴(lài)文件等等熔脂。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末佩研,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子霞揉,更是在濱河造成了極大的恐慌旬薯,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,331評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件适秩,死亡現(xiàn)場(chǎng)離奇詭異绊序,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)秽荞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,372評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門(mén)骤公,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人蚂会,你說(shuō)我怎么就攤上這事淋样。” “怎么了胁住?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,755評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵趁猴,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我彪见,道長(zhǎng)儡司,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,528評(píng)論 1 296
  • 正文 為了忘掉前任余指,我火速辦了婚禮捕犬,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘酵镜。我一直安慰自己碉碉,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,526評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布淮韭。 她就那樣靜靜地躺著垢粮,像睡著了一般。 火紅的嫁衣襯著肌膚如雪靠粪。 梳的紋絲不亂的頭發(fā)上蜡吧,一...
    開(kāi)封第一講書(shū)人閱讀 52,166評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音占键,去河邊找鬼昔善。 笑死,一個(gè)胖子當(dāng)著我的面吹牛畔乙,可吹牛的內(nèi)容都是我干的君仆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,768評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼返咱!你這毒婦竟也來(lái)了氮帐?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,664評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤洛姑,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后皮服,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體楞艾,經(jīng)...
    沈念sama閱讀 46,205評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,290評(píng)論 3 340
  • 正文 我和宋清朗相戀三年龄广,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了硫眯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,435評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡择同,死狀恐怖两入,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情敲才,我是刑警寧澤裹纳,帶...
    沈念sama閱讀 36,126評(píng)論 5 349
  • 正文 年R本政府宣布,位于F島的核電站紧武,受9級(jí)特大地震影響剃氧,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜阻星,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,804評(píng)論 3 333
  • 文/蒙蒙 一朋鞍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧妥箕,春花似錦滥酥、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,276評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至呛讲,卻和暖如春禾怠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背贝搁。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工吗氏, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人雷逆。 一個(gè)月前我還...
    沈念sama閱讀 48,818評(píng)論 3 376
  • 正文 我出身青樓弦讽,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子往产,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,442評(píng)論 2 359

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