1. 在平臺上新建倉庫

  2. cd到指定位置
    pod lib create XX-CocoaPods-Specs

  3. 回答問題

//選擇平臺
What platform do you want to use?? [ iOS / macOS ]
ios

//選擇語言
What language do you want to use?? [ Swift / ObjC ]
swift

//是否需要Demo
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 ]
No

  1. 修改podspec文件

Pod::Spec.new do |s|

// 庫名稱,默認和工程名相同,建議不改
s.name = 'XX-CocoaPods-Specs'

// 庫的版本,每次升級版本后必須要在這里修改版本號
s.version = '0.1.0'

// 該庫的簡介,更改成適合的簡介,使用默認簡介會出現簡介沒有意義的錯誤 ????????
s.summary = '索引文件'

// 詳細描述,一般不用改,有readme呢
s.description = <<-DESC
TODO: Add long description of the pod here.
DESC

// 庫的主頁,需要更改為正確的主頁。去創建的遠端庫那里拷貝 ????????
s.homepage = 'http://********/XX-CocoaPods-Specs'

// 許可,私有庫可以不改
s.license = { :type => 'MIT', :file => 'LICENSE' }

// 作者,可以不改
s.author = { 'name' => 'email' }

// 庫的克隆地址,這個地址必須改成正確的克隆地址,可以是 https 或 ssh ????????
s.source = { :git => 'http://********/XX-CocoaPods-Specs.git', :tag => s.version.to_s }

// 該庫最低支持版本,可以修改為對應版本。如果這個地方改了,Podfile、Pods.xcodeproj文件里的版本號也要改??梢酝ㄟ^全局搜索原來的版本號進行修改????????
s.ios.deployment_target = '14.0'

// 該庫上傳文件的路徑,默認是 Classes 文件夾下的所有文件夾及文件,默認不需要改
s.source_files = 'XX-CocoaPods-Specs/Classes/**/*'

//--------------------------------------------------
// 以下是默認沒有但可以自行添加的基礎配置

// 設置指定版本號或非指定版本號的依賴庫,
//s.dependency 'SnapKit'

// 指定 Swift 語言版本,Swift 項目必須設置這個????????
// s.swift_version = '5.0'

end

  1. 本地校驗pod lib lint
  • cd 到XX-CocoaPods-Specs -> XX-CocoaPods-Specs.podspec 所在目錄
  • 執行 pod lib lint --allow-warnings
  • 出現XX-CocoaPods-Specs passed validation.表示成功
  1. 關聯遠程庫
    git remote add origin "http://********/XX-CocoaPods-Specs"

  2. 提交代碼并為項目打上tag
    git add .
    git commit -m "project init"
    git tag -m "first dev v0.1.0" 0.1.0
    git push
    git push --tags

  3. 聯網校驗
    pod spec lint

  4. 新建本地索引庫,并關聯到遠程庫
    pod repo add XX-CocoaPods-Specs http://********/XX-CocoaPods-Specs.git
    可執行pod repo檢查新庫是否添加成功

使用

  • 將子組件XXTest.podspec添加并推送到XX-CocoaPods-Specs主倉庫

  • 先cd到XXTest.podspec所在的目錄,然后執行:
    pod repo push XX-CocoaPods-Specs XXTest.podspec --allow-warnings

  • // 不需要校驗時可以使用這個
    pod repo push XX-CocoaPods-Specs XXTest.podspec --verbose --allow-warnings --use-libraries --skip-import-validation

  • 現在已經成功的將本地私有庫推送到了遠程索引庫中。

參考:
https://www.jianshu.com/p/839b850dad2a
https://www.jianshu.com/p/7a727ec193bc