iOS私有库创建(我们用的是gitlab仓库)-组件化

一、新建一个code库,并且发布到私有仓库

首先我们得明白两个概念
1、code repository是代码仓库,我们把包代码上传到这个仓库。不同的库,对应的不同的code repository
2、spec repository是配置仓库,所有的配置按照包名、版本号分门别类的存放在这个仓库。这个仓库只用来存放spec文件,不存放代码。

1、我们先新建一个spec repository 仓库 。先在gitlab(或者GitHub)新建一个仓库。复制仓库的地址并且执行下面的代码

pod repo add SLSpecs https://git.shunliandongli.com/shunlian_ios/SLSpecs.git

查看是否添加成功
执行pod repo list 。出现下面就是添加成功了

image.png

2、创建本地code repository仓库` ,我们以ShunLianLib为仓库的名字,cd 到你熬创建的仓库的目录

执行代码 pod lib create ShunLianLib

image.png

这样本地的pod仓库就创建好了。

3、修改ShunLianLib.podspec文件(这是重点)。

使用下面这些常用的就行了。还有一些需要的,自己去查资料

Pod::Spec.new do |s|
  s.name             = 'ShunLianLib' #库名字
  s.version          = '0.1.0'       #库版本号
  s.summary          = 'A short description of ShunLianLib.'  #摘要
  s.description      = <<-DESC
TODO: Add long description of the pod here.
                       DESC                 #描述

  s.homepage         = 'https://github.com/goodBoyAndGril/ShunLianLib'  #仓库地址
  # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'  #截屏地址
  s.license          = { :type => 'MIT', :file => 'LICENSE' }  #开源协议
  s.author           = { 'goodBoyAndGril' => 'chenzhen@shunlianwangluo.com' } #作者
  s.source           = { :git => 'https://github.com/goodBoyAndGril/ShunLianLib.git', :tag => s.version.to_s } #库的远程仓库地址
  # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'

  s.ios.deployment_target = '8.0' #支持的最低版本

  s.source_files = 'ShunLianLib/Classes/**/*'  #仓库的实际文件地址,发布的就是这一块的地址
  
  # s.resource_bundles = {
  #   'ShunLianLib' => ['ShunLianLib/Assets/*.png']
  # } #资源文件路径

  # s.public_header_files = 'Pod/Classes/**/*.h'
  # s.frameworks = 'UIKit', 'MapKit'   #引用的系统库
  # s.dependency 'AFNetworking', '~> 2.3'   #引用的第三方库
  # s.dependency 'xxxxxx', '~> 2.3'  #引用的第三方库
  # s.dependency 'xxxxxx', '~> 2.3' #引用的第三方库
4、验证ShunLianLib.podspec文件的正确性

执行 pod lib lint 或者 pod lib lint --allow-warnings(忽略警告)
得到下面的就是验证通过

image.png
5、在gitlab上新建code repository ,然后提交版本,生成标签并提交
//进入你刚刚本地创建的代码路径
cd existing_folder
//初始化
git init
//添加远程代码库
git remote add origin https://git.shunliandongli.com/Private/ShunLianLib.git
//将全部文件加入到暂存区
git add .
//代码提交到本地
git commit
//代码推送到远程
git push -u origin master
6、代码提交之后就之后,就发布新版本
6.1、用sourceTree提交一个版本,再给这个版本添加一个标签
image.png
6.2、填写标签 就是版本号。勾选推送标签
image.png
6.3、这里就生成了一个标签
image.png
6.4、现在要修改.podspec 文件 (我们以SLFoundation为例),修改SLFounddation.podspec中的s.version = '对应的标签'。这个版本号就是我们刚刚的标签,然后保存
image.png

image.png
6.5、保存成功之后,执行代码,cdSLFoundation.podspec所在的目录,在控制台执行下面的代码,提交到SLSpecs代码库中
pod repo push SLSpecs SLFoundation.podspec
pod repo push SLSpecs SLFoundation.podspec --allow-warnings //这个忽略警告
7、出现了这个就说明成功了
-> SLFoundation (0.0.5)
   - NOTE  | xcodebuild:  note: Using new build system
   - NOTE  | [iOS] xcodebuild:  note: Planning build
  - NOTE  | [iOS] xcodebuild:  note: Constructing build description
  - NOTE  | [iOS] xcodebuild:  warning: Skipping code signing because the 
 target does not have an Info.plist file and one is not being generated 
 automatically. (in target 'App' from project 'App')
执行下面代码。搜索一下,验证是否能搜索到

pod search SLFoundation


二、对已有库进行更新

执行上面步骤6,更新代码上传标签,修改版本号。

[!] Tips:由于发展豆荚实现细节,当你添加新的/现有的文件Pod/Classes或Pod/Assets或更新podspec,你应该运行pod install或pod update。

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