基于SVN的CocoaPods庫制作

基于SVN的Pod庫制作流程


1.創(chuàng)建.podspec文件

使用命令

pod spec create 要?jiǎng)?chuàng)建的庫名
# 例:pod spec create MyProject

因?yàn)槭撬接袀}庫,需要單獨(dú)將.podspec文件單獨(dú)放入一個(gè)文件夾中, 比如文件夾名為Specs, 其目錄結(jié)構(gòu)如下:

Specs
├── xxx.podspec

2. 配置 .podspec文件


可根據(jù)需要添加或修改相關(guān)配置:

Pod::Spec.new do |s|
  s.name             = 'MyProject'
  #注意!!!-----此版本號需要與遠(yuǎn)程tag版本保持一致
  s.version          = '1.0.0'
  s.summary          = 'A short description of MyProject.'
  s.description      = <<-DESC
  #注意!!!------此處配置svn遠(yuǎn)程庫地址
  s.source           = { :svn => 'http://xxx/MyProject'}
  
  #基于tag版本的話source可以配置如下,如版本格式為1.0.0的如下即可
  #若為v1.0.0需在前面添加字符"v",改為tag=> "v#{s.version}"
  #s.source           = { :svn => 'http://xxx/MyProject', :tag=> "#{s.version}"}
  
  s.ios.deployment_target = '9.0'
  #配置項(xiàng)目文件路徑
  s.source_files = 'MyProject/Classes/**/*'
  #是否基于三方Pod依賴,如依賴于AFNetworking
  s.dependency 'AFNetworking'
end

然后提交本地代碼倉庫到SVN遠(yuǎn)程倉庫,包括封裝的代碼以及包含.podspec的文件夾

3. Pod庫上傳


  1. 首先安裝SVN
  brew install subversion 
  • 由于HomeBrew鏡像在國外速度會很慢,一般將HomeBrew鏡像地址替換為中科院的,可查看文章結(jié)尾[附錄](#6. 附錄); 或 前往官網(wǎng)
  1. 添加SVN的索引倉庫之前需要為CocoaPods安裝svn插件,之后才可以添加發(fā)布倉庫
sudo gem install cocoapods-repo-svn
  1. 配置SVN倉庫賬號密碼
svn ls 你的倉庫遠(yuǎn)程路徑
###查看你所在SVN地址的項(xiàng)目, 如: svn ls http://xxx/svn/MyFramework

然后會提示你輸入賬號密碼,配置后你的pod才能下載項(xiàng)目

  1. 添加pod-svn倉庫 (需要進(jìn)入.podspec所在文件夾下)
pod repo-svn add Spec文件夾名 Spec文件夾遠(yuǎn)程地址
  1. 驗(yàn)證.podspec文件(由于我們的.podspec文件和項(xiàng)目不在一個(gè)路徑,因此使用pod lib lint本地驗(yàn)證會失敗,因此這里我們選擇遠(yuǎn)程驗(yàn)證pod spec lint)
pod spec lint --allow-warnings --use-libraries 

如果想要本地驗(yàn)證成功,需要將.podspec文件放在項(xiàng)目代碼同級文件夾中,列如我們的項(xiàng)目文件是MyProject, 則目錄應(yīng)為:

MyProject
├── MyProject
│   ├── Assets
│   └── Classes
│       ├── MyProject.h
│       └── MyProject.m
├── MyProject.podspec
├── LICENSE
├── README.md

然后執(zhí)行以下命令即可

pod lib lint --allow-warnings --use-libraries
  1. 驗(yàn)證成功后發(fā)布pod-svn倉庫:
pod repo-svn push 庫名 文件名.podspec

這里就已經(jīng)發(fā)布成功了,后續(xù)如需要修改或刪除Pod私有庫可以使用用下列命令:

更新pod-svn倉庫:pod repo-svn update Spec文件名
刪除pod-svn倉庫:pod repo-svn remove Spec文件名

至此基于SVN的Pod庫就上傳完畢,但供別人使用的話還需要按下面說明中做配置

4. Pod install 之前所需配置


項(xiàng)目Podfile文件中需要添加如下配置:

##########Podfile#########
# 私有庫都需要添加此地址
source 'https://github.com/CocoaPods/Specs.git'
# 下載SVN上的Pod庫需要添加如下SVN插件配置
plugin 'cocoapods-repo-svn', :sources => [
'http://你的.podspec文件所在文件夾地址' 
如:'http://xxx/XXXSpecs'
]
##########Podfile#########

5. 總結(jié)


創(chuàng)建基于SVN的Pod庫相比之下還是比基于Git的繁瑣許多,主要原因就是Mac系統(tǒng)上移除了對于SVN的相關(guān)支持,Cocoapods也是,都需要單獨(dú)下載支持SVN的終端插件,導(dǎo)致整個(gè)過程相對復(fù)雜一些,望此篇可以幫助到需要的人

6. 附錄


國內(nèi)HomeBrew一鍵安裝:

/bin/bash -c "$(curl -fsSL https://gitee.com/wejectchan/brew/raw/master/install.sh)"

國內(nèi)HomeBrew一鍵卸載:

/bin/bash -c "$(curl -fsSL https://gitee.com/wejectchan/brew/raw/master/uninstall.sh)"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容