⑤ 遠程私有庫

上面一節介紹了本地私有庫https://blog.csdn.net/liyunxiangrxm/article/details/105289053
本地私有庫有很多存在的問題:
1、需要主動指明路徑,如果移動工程文件夾路徑,那麼podfile中的路徑需要修改。
2、版本升級不好維護,沒有指明tag。
3、無法多人合作開發

所以,就需要遠程私有庫:
首先,看遠程私有庫原理圖:
在這裏插入圖片描述

遠程私有庫流程:

第一步:建立遠程的私有庫索引庫
  • 先找一個第三方代碼倉庫 我這兒找的是coding.net,碼雲也可以,GitHub也可以,只不過GitHub建立私有倉庫會收費
  • 然後建立項目,建立好以後的效果
    在這裏插入圖片描述

在這裏插入圖片描述

第二步:把遠程索引庫和本地索引庫關聯$ pod repo add 名字 url

原理圖:
在這裏插入圖片描述

  • 如果url是用https的,那麼可以直接使用,如果用SSH,得使用公鑰私鑰
  • https舉例:https的url:$ pod repo add HMGFMBase https://e.coding.net/heimage/HMGFMSpecs.git
  • SSH舉例:$ pod repo add HMGFMBase [email protected]:heimage/HMGFMSpecs.git

執行完以後效果:
在這裏插入圖片描述
讓配置公鑰,那麼我們一步一步來配置

  1. 終端 $ ssh-keygen,其他後續沒有其他輸入的直接回車就行
    在這裏插入圖片描述

  2. 然後在.SSH文件裏面就會產生id_rsa和id_rsa.pub兩個文件,路徑如下:
    在這裏插入圖片描述

  3. 然後我們在coding.net進行配置,點擊新增公鑰
    在這裏插入圖片描述

  4. 然後我們把id_rsa.pub公鑰的內容加進去 公鑰內容裏面,如圖所示,添加成功
    在這裏插入圖片描述

  • 然後我們在終端執行添加遠程索引庫SSH的鏈接的
    $ pod repo add HMGFMBase [email protected]:heimage/HMGFMSpecs.git
    在這裏插入圖片描述

  • 成功後如圖,也可以通過 $ pod repo進行呢查詢
    在這裏插入圖片描述

第三步:本地製作一個私有的pod模板庫並在遠端建立一個遠程私有庫
  • 本地製作pod模板庫
    $ cd /Users/liuxitong/Desktop/本地庫方案/2、遠程私有庫方案/ReomteLib
    $ pod lib create HMGFMBase
    在這裏插入圖片描述

核心代碼拖入Classes文件夾
在這裏插入圖片描述

在這裏插入圖片描述

  • 然後我們想要用測試工程的話,需要進入Example工程,並執行pod install
    在這裏插入圖片描述

  • 製作遠程框架(和遠程私有索引庫步驟一樣)
    創建一個新的項目
    在這裏插入圖片描述

第四步、把第三步的HMGFMBase 文件上傳到剛纔做好的遠程項目中

  • 首先$ cd /Users/liuxitong/Desktop/本地庫方案/2、遠程私有庫方案/ReomteLib/HMGFMBase

  • 然後查看git狀態

  • 如果沒有commit,那麼進行commit操作,上傳到本地倉庫
    git add . git commit -m 'xx'
    這樣就commit成功了
    在這裏插入圖片描述

  • 然後修改podSpec文件

s.name             = 'HMGFMBase'
  s.version          = '0.1.0'
  s.summary          = 'HMGFMBase'
  s.description      = 'HMGFMBase包含基本的配置組件等'
  s.homepage         = 'https://heimage.coding.net/p/HMGFMBase'
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
  s.author           = { 'liyuunxiangGit' => '[email protected]' }
  s.source           = { :git => 'https://e.coding.net/heimage/HMGFMBase.git', :tag => s.version.to_s }
  s.ios.deployment_target = '8.0'
  s.source_files = 'HMGFMBase/Classes/**/*'
  • 然後$ pod lib lint 驗證本地spec文件是否正確
    在這裏插入圖片描述

  • 本地庫和遠程庫關聯
    $ git remote add origin '[email protected]:heimage/HMGFMBase.git'
    $ git push origin master

  • 然後設置標籤tag
    $ git tag '0.1.0'
    $ git push --tags

  • 然後我們可以通過 $ pod spec lint 驗證遠程spec文件是否正確

  • 驗證通過

第五步、向私有索引庫提交spec

  • 執行 $ pod repo push HMGFMBase HMGFMBase.podspec
    把 spec文件推到 HMGFMBase 這個repo中

它的執行原理的 把HMGFMBase.podspec push到本地的repo的HMGFMBase中,而且會同步上傳到我們之前建立的遠程索引庫。

第六步、如何使用

  • 我們在任意一個工程,配置podFile,然後就可以使用這個遠程庫了

source '官方路徑'
source '私有索引庫路徑'

pod 'base'

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章