公共库业务,基础层划分!

一、构建私有云,本文推荐为码云

1、构建名称为LuckTimeSpec,选择私有建立;

2、Copy地址的https 链接;

二、打开终端

输入:

cd /Users/zhangpeng/.cocoapods/repos

(zhagpeng为用户名称)回车

输入:

pod repo add LuckTimeSpec https://gitee.com/peter_zhang/LuckTimeSpec.git

回车

https://gitee.com/peter_zhang/LTSpec.git 为https码云仓库地址

看到克隆输出

Cloning spec repo `LuckTimeSpec` from `https://gitee.com/peter_zhang/LuckTimeSpec.git`

发现文件夹中多了一个LuckTimeSpec文件夹

三、本地私有代码库

1.新建一个组件目录:

cd /Users/zhangpeng/开发程序/demo

2.创建LuckTimeDemo组件工程

pod lib create LuckTimeDemo

如果你安装了pod框架控制台输出:

What platform do you want to use?? [ iOS / macOS ]
> iOS What language do you want to use?? [ Swift / ObjC ]
> ObjC Would you like to include a demo application with your library? [ Yes / No ]
> No Which testing frameworks will you use? [ Specta / Kiwi / None ]
> None Would you like to do view based testing? [ Yes / No ]
> No What is your class prefix?
> PT

3.将自己抽取出的组件拷贝到创建的模板工程中(viewcontroller、代码或者文件夹):

四.创建远程私有代码仓库

1、构建名称为LuckTime,选择私有建立;

2、Copy地址的https 链接;

五.修改组件的LuckTimeDemo.podSpec文件

ps:s.description 文案要大于 s.summary否则上传到远程私有索引库会显示进行错误!

六、提交本地私有模板组件代码到远程私有代码仓库,并打上tag标签

cd /Users/zhangpeng/开发程序/demo/LuckTimeDemo
git add .
git commit -m '时间组件'
git tag '0.1.0'
git remote add origin git@gitee.com:peter_zhang/LuckTime.git
git push -u origin master
git push --tag

如果本本地有 remote可以先删除remote

 git remote rm origin

然后执行

git remote add origin git@gitee.com:peter_zhang/LuckTime.git

七、对文件进行本地验证和远程验证

cd /Users/zhangpeng/开发程序/demo/LuckTimeDemo

本地验证

pod lib lint --private
//去掉警告的话可以用
pod lib lint --private --allow-warnings

远程验证

pod spec lint --private
去掉警告的话可以用
pod spec lint --private --allow-warnings

将验证通过的.podSpec文件加入到本地私有索引库,并上传到远程私有索引库

pod repo push LuckTimeSpec LuckTimeDemo.podspec

//不要警告的话可以用

pod repo push LuckTimeSpec

八、文件检查

在cocoapods->repos->LuckTimeSpec路径下就会出现LuckTimeDemo

远程索引库就会有0.1.0版本的索引文件

九、使用终端查看自己的本地云组件

pod search LuckTimeDemo

终端就会显示出自己的版本代码

十、打开终端一顿操作猛如虎

cd /Users/zhangpeng/Desktop/LTMainProject/LTMainProject
vim Podfile

//添加

source ‘https://gitee.com/peter_zhang/LuckTimeSpec.git’

添加pod 'LuckTimeDemo'后退出

  pod install

打开主工程发现组件已经乖乖躺在Pod里了

十一、团队人员的用法

拉下工程代码 pod install

cd /Users/zhangpeng/.cocoapods/repos
中就有这个源

pod search MobileKit

也会有

iOS组件化开发一远端私有库建立(二)的更多相关文章

  1. iOS组件化开发一远程私有库的升级(三)

    一.远程私有库的升级 1. 把新增的类 拖入到 classes 文件夹中 : 2. 修改 pod.spec 文件的 s.verson = ‘0.2.0': 二.更新远程仓库 1.cd 到本地仓库的位置 ...

  2. iOS组件化开发入门 —— 提交自己的私有库

    前言:本人也是初次接触组件化开发,感觉现有的资料太繁杂,就简单整理了一下,在此跟大家分享一些入手的经验,主要就是描述cocoapods的私有库封装和提交.组件化开发是个大的议题,涉及到架构思路.设计模 ...

  3. iOS 组件化开发之使用CocoaPod制作自己的远程私有库

    随着应用需求逐步迭代,应用的代码体积将会越来越大,为了更好的管理应用工程,我们开始借助CocoaPods版本管理工具对原有应用工程进行拆分.但是仅仅完成代码拆分还不足以解决业务之间的代码耦合,为了更好 ...

  4. iOS组件化开发-CocoaPods简介

    CocoaPods简介 任何一门开发语言到达一定阶段就会出现第三方的类库管理工具,比如Java的Maven.WEB的Webpack等.在iOS中类库的管理工具-CocoaPods. 利用CocoaPo ...

  5. iOS组件化开发· 什么是组件化

    越来越多公司,开始了组件化,你还要等到什么时候...... 说到开发模式,我们最熟知的开发模式 MVC 或者最近比较热门的MVVM.但是我今天说的组件化的开发,其实MVC不是一类的.它其实是····· ...

  6. iOS组件化开发一本地环境配置(一)

    首先我们要使用pod支持组件化开发 解决CocoaPods慢的方案(gem和pod repo换源) gem换源 $ gem sources --remove https://rubygems.org/ ...

  7. iOS组件化开发-发布私有库

    远程索引库 将远程索引库添关联到本地 pod repo 查看本地已关联仓库源 pod repo add 本地索引库名称 远程索引库仓库地址 pod repo update 索引库名称 pod repo ...

  8. iOS代码组件化--利用cocoaPods创建私有库

    如果项目模块多,模块间逻辑复杂,我们发现多个人同时维护一个代码仓库需要十分小心,一不小心,造成冲突,解决起来很烦,相信很多人都遇到手工删除合并的冲突的文件的经历. 如果利用组件化思想,每个人维护自己的 ...

  9. iOS组件化开发一pod库包含MRC的文件处理(五)

    在做项目的过程中,建立了一个私有pod库,在这个库中存在mrc类文件这个时候如果在使用了arc的工程中引用这个pod的工程中手动设置当然也可以就是费时费力.现在我们来看看如何在私有库配置文件里配置自动 ...

随机推荐

  1. 【转载】MySQL Replication 环境安装与配置

    安装[root@msr01 ~]# yum install mysql-serverInstalled:mysql-server.x86_64 0:5.1.73-3.el6_5 Dependency ...

  2. Ackerman 函数

    先留个简介: 函数定义: 从定义可以看出是一个递归函数.阿克曼函数不仅值增长的非常快,而且递归深度很高. 一般用来测试编译其优化递归调用的能力.. 如果用一下代码简单实现的话,输入参数4,2程序就直接 ...

  3. 对复杂字典Dictionary<T1,T2>排序问题

    原文:对复杂字典Dictionary<T1,T2>排序问题 //VoltageCount类(电压值对应的数量):    public class VoltageCount    {     ...

  4. Android Camera2 拍照入门学习

    原文:Android Camera2 拍照入门学习 学习资料: 肾虚将军android camera2 详解说明 极客学院android.hardware.camera2 使用指南 Android 5 ...

  5. Delphi中返回类型为string的函数的一个陷阱(不是很懂)

    如果类的一个成员函数的返回值是string类型,需要注意一个问题 其返回值可能是错误的 例如函数的实现如下 function GetString( s: string ): string;begin  ...

  6. html send mail

    <html> <body> <script> var formattedBody = "FirstLine \n Second Line \n Third ...

  7. PySide——Python图形化界面入门教程(一)

    PySide——Python图形化界面入门教程(一) ——基本部件和HelloWorld 翻译自:http://pythoncentral.io/intro-to-pysidepyqt-basic-w ...

  8. linux服务脚本编写

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  9. eclipse 插件编写(二)

    上篇文章简单写了下怎么新建一个eclipse插件工程,这次写一下怎么在上次的工程中添加几个菜单,如菜单栏菜单.工具栏菜单.右键菜单等. 创建一个完成的菜单需要了解三个扩展点,即menus.comman ...

  10. AlwaysOn数据同步暂停及回退技术

    随着AlwaysOn技术的流行,关于AlwayOn的问题也越来越多,某企业搭建有三副本的AlwaysOn一套,现想修改主节点上某张表的某个数据,看看会出现什么后果,如果结果正常,就同步到其他节点上:如 ...