1.iOS搭建公司自己的私有庫

問題

1.iOS 私有庫存在的意義
2.整么搭建一個iOS私有庫呢

答案

1.iOS 私有庫存在的意義

當(dāng)我們到達(dá)一家新的工作單位之后净当,特別是公司沒有iOS項目基礎(chǔ)的時候,為了公司項目有技術(shù)積累扒俯,作為一個有信仰的iOS開發(fā)人員就需要搭建公司的 私有庫了展融。搭建私有庫的好處就不用我多說了。

2.整么搭建一個iOS私有庫呢

2.1 最終結(jié)果顯示

 Tip: cocoapod 整么安裝弊攘,這里就不做詳細(xì)解釋了牵辣,作為一個iOS開發(fā)人員摔癣,這個是最基礎(chǔ)的工具,我就當(dāng)你掌握這些基本知識了

假設(shè)我們開發(fā)了一個私有庫 LAAlamofire 最終結(jié)果應(yīng)該如下圖1.1.png,LASpec 是我們的索引庫纬向,LAAlamofire 使我們自己開發(fā)的庫


1.1.png

2.2 創(chuàng)建流程

  • 1.創(chuàng)建自己的索引庫 LASpec
在任意目錄下執(zhí)行如下命令:
pod repo add LASpec https://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@github.com/MMSuperD/LASpec.git

索引庫的名字: LASpec
索引庫的地址: https://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@github.com/MMSuperD/LASpec.git

如果出現(xiàn)如下錯誤 :fatal: unable to access 'https://github.com/MMSuperD/LASpec.git/': Error in the HTTP2 framing layer
解決方案: 多嘗試幾次择浊,換個網(wǎng)絡(luò)嘗試

成功后的結(jié)果是:在 ~/.cocoapods/repos目錄下面新增了 一個 LASpec 文件夾
  • 2.創(chuàng)建自己的代碼倉庫LAAlamofire
在桌面創(chuàng)建自己的代碼文件夾:cd 到自己的文件夾目錄執(zhí)行如下代碼:
pod lib create LAAlamofire
代碼庫的名字: LAAlamofire
如果出現(xiàn) 錯誤: fatal: unable to access 'https://github.com/CocoaPods/pod-template.git/': Error in the HTTP2 framing layer
同樣的方式切換網(wǎng)絡(luò),多嘗試幾次
過長中:
What platform do you want to use?? [ iOS / macOS ]
 > iOS

What language do you want to use?? [ Swift / ObjC ]
 > Swift

Would you like to include a demo application with your library? [ Yes / No ]
 > Yes

Which testing frameworks will you use? [ Quick / None ]
 > None

Would you like to do view based testing? [ Yes / No ]
 > Yes

到這里基本上我們的本地 pod LAAlamofire逾条,基本已經(jīng)創(chuàng)建完畢了

  • 3.修改自己的本地代碼庫LAAlamofire
    LAAlamofire.podspec 文件
    核心點(具體什么意思自行查閱):

s.version = '0.1.1'
s.source = { :git => 'https://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@github.com/MMSuperD/LAAlamofire.git', :tag => s.version.to_s }
s.ios.deployment_target = '15.0'

#
# Be sure to run `pod lib lint LAAlamofire.podspec' to ensure this is a
# valid spec before submitting.
#
# Any lines starting with a # are optional, but their use is encouraged
# To learn more about a Podspec see https://guides.cocoapods.org/syntax/podspec.html
#

Pod::Spec.new do |s|
  s.name             = 'LAAlamofire'
  s.version          = '0.1.1'
  s.summary          = 'A short description of LAAlamofire.'

# This description is used to generate tags and improve search results.
#   * Think: What does it do? Why did you write it? What is the focus?
#   * Try to keep it short, snappy and to the point.
#   * Write the description between the DESC delimiters below.
#   * Finally, don't worry about the indent, CocoaPods strips it!

  s.description      = <<-DESC
TODO: Add long description of the pod here.
                       DESC

  s.homepage         = 'https://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@github.com/MMSuperD/LAAlamofire.git'
  # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
  s.author           = { 'fan' => 'shdjxywd@163.com' }
  s.source           = { :git => 'https://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@github.com/MMSuperD/LAAlamofire.git', :tag => s.version.to_s }
  # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'

  s.ios.deployment_target = '15.0'

  s.source_files = 'LAAlamofire/Classes/**/*'
  
#  s.resource_bundles = {
#        'LAAlamofire' => ['LAAlamofire/Assets/**/*']
#    }

  # s.public_header_files = 'Pod/Classes/**/*.h'
  # s.frameworks = 'UIKit', 'MapKit'
  # s.dependency 'AFNetworking', '~> 2.3'
    s.dependency 'Alamofire', '~> 5.6.4'
end
  • 4.把我們本地LAAlamofire的代碼推到遠(yuǎn)端倉庫
首先 pod install 
git add .
git commit -m "init"
git remote add origin https://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@github.com/MMSuperD/LAAlamofire.git
git push origin main -f  (這里第一次強制推送到 遠(yuǎn)端如果你不強制推送到遠(yuǎn)端琢岩,那你就一步一步拉 之后在推 git pull origin main --allow-unrelated-histories --no-rebase,建議強制推送)

自己打tag: git tag 0.1.1
推送tag:git push origin --tags
  • 5.本地庫,遠(yuǎn)程庫校驗
本地庫校驗
pod lib lint LAAlamofire.podspec --verbose --allow-warnings
遠(yuǎn)端庫校驗
pod spec lint --verbose --allow-warnings
  • 6.推送本地庫在索引庫中更新
pod repo push LASpec LAAlamofire.podspec --allow-warnings

參考文獻(xiàn)

私有庫文獻(xiàn)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末师脂,一起剝皮案震驚了整個濱河市担孔,隨后出現(xiàn)的幾起案子江锨,更是在濱河造成了極大的恐慌,老刑警劉巖糕篇,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件啄育,死亡現(xiàn)場離奇詭異,居然都是意外死亡拌消,警方通過查閱死者的電腦和手機挑豌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拼坎,“玉大人,你說我怎么就攤上這事完疫√┘Γ” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵壳鹤,是天一觀的道長盛龄。 經(jīng)常有香客問我,道長芳誓,這世上最難降的妖魔是什么余舶? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮锹淌,結(jié)果婚禮上匿值,老公的妹妹穿的比我還像新娘。我一直安慰自己赂摆,他們只是感情好挟憔,可當(dāng)我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著烟号,像睡著了一般绊谭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上汪拥,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天达传,我揣著相機與錄音,去河邊找鬼迫筑。 笑死宪赶,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的脯燃。 我是一名探鬼主播逊朽,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼曲伊!你這毒婦竟也來了叽讳?” 一聲冷哼從身側(cè)響起追他,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎岛蚤,沒想到半個月后邑狸,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡涤妒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年单雾,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片她紫。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡硅堆,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出贿讹,到底是詐尸還是另有隱情渐逃,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布民褂,位于F島的核電站茄菊,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏赊堪。R本人自食惡果不足惜面殖,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望哭廉。 院中可真熱鬧脊僚,春花似錦、人聲如沸遵绰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽街立。三九已至舶衬,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赎离,已是汗流浹背逛犹。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留梁剔,地道東北人虽画。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像荣病,于是被迫代替她去往敵國和親码撰。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,577評論 2 353

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