iOS CocoaPods私有库

前提条件

  • pod环境

  • 代码仓库

仓库以Coding为例,建立团队什么按下不表。

1.配置sshKey

1.png

2.新建项目

2.png
3.png
4.png

3.新建索引仓库

5.png
6.png

4.新建库/代码仓库

7.png

5.搭建本地的私有索引库

首先把刚刚新建的私有库克隆到本地

git clone https://e.coding.net/livermorecoding/liver/LiverSpec.git

(地址换成自己的,记住是存放索引这个)

添加本地索引库

pod repo add LiverSpec https://e.coding.net/livermorecoding/liver/LiverSpec.git

(LiverSpec 为 repo的名,如CocoaPods自带的master)

查看是否添加成功了

pod repo

可以查看到刚刚我们添加的LiverSpec索引库了

LiverSpec

6.搭建Pod私有库所需要的项目工程

先克隆仓库到本地

git clone https://e.coding.net/livermorecoding/liver/LiverLib.git

(地址换成自己的,记住是存放自己想要存放pod引用文件的这个库)

再自己找一个目录,通过CocoPods的官方命令创建Pod项目工程

以我为例,cd 到podlib目录

8.png

执行以下命令

pod lib create LiverLib

(LiverLib为工程名字)

9.png

其中prefix是文件的前缀,你可以通过打开Example目录查看其中的类文件,你会发现所有的类都加上了这个前缀,如AppDelegate变成了LIVERAppDelegate。

初始化完成后会自动打开工程。

6.替换文件

打开LiverLib-> Classes 目录,把ReplaceMe.m文件替换成你想要pod引用的文件,可以是一个framework,或者.h.m.a等文件。

例如我在这里存放了两个基类

10.png

7. 修改.podspec

Pod::Spec.new do |s|
 s.name             = 'LiverLib'
 s.version          = '0.1.0'
 s.summary          = 'description of LiverLib.'
​
# 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
 # homepage要有效
 s.homepage         = 'https://www.baidu.com'
 # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
 s.license          = { :type => 'MIT', :file => 'LICENSE' }
 s.author           = { 'zh' => '949077140@qq.com' }
 # source是之前要做的pod的引用库地址
 s.source           = { :git => 'https://e.coding.net/livermorecoding/liver/LiverLib.git', :tag => s.version.to_s }
 # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'
​
 s.ios.deployment_target = '9.0'
​
 s.source_files = 'LiverLib/Classes/**/*'

8.校验LiverLib.podspec 是否有效

pod lib lint LiverLib.podspec --sources=https://cdn.cocoapods.org/,https://e.coding.net/livermorecoding/liver/LiverSpec.git

这里需要添加--sources,指明校验的源为自己的spec索引库

11.png

9. 关联远程仓库

把通过pod lib create 建立的模板工程的.git 文件替换为第四部创建的自己使用的pod引用库.git文件,目的在于关联当前的项目到私有库。

我这里是podlib下的LiverLib工程.git 替换为与podlib同级的LiverLib下的.git文件。

10. 提交工程,打tag

cd到模板工程,提交代码,并打tag,注意版本的一致性,git tag 版本和LiverLib.podspec中的版本一致

git add --all

git commit -m"工程提交"

git push

git tag "0.1.0"

git push --tags

结果查看

12.png

11.添加自己的spec source

pod repo add LiverSpec https://e.coding.net/livermorecoding/liver/LiverSpec.git

LiverSpec为pod repo 查看到的我们自己新建的repo名称,后面地址为私有的spec仓库

12. 把本地的私有库推送到远程

pod repo push LiverSpec LiverLib.podspec --sources=https://cdn.cocoapods.org/,https://e.coding.net/livermorecoding/liver/LiverSpec.git

查看效果

13.png
14.png

12.验证一把

方式一:

pod search LiverLib

方式二:

新建工程,修改podfile文件

source 'https://cdn.cocoapods.org'
source 'https://e.coding.net/livermorecoding/liver/LiverSpec.git'
​
use_frameworks!
​
platform :ios, '10.0'
target 'PodApp' do  
pod 'LiverLib', '0.1.0'
​
end

pod install

15.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容