组件化(一)

一、git的基本使用

第一步 连接远程仓库和本地仓库:

方法一
  1. 在GitHub上建一个远程仓库
  2. 在本地笔记本上准备好存放仓库的文件夹
  3. 终端cd到这个文件夹
  4. 打开终端输入git clone + 远程仓库url
  5. 在这个新文件夹里面就可以开始创建Xcode项目了

方法二

  1. 在GitHub上建一个远程仓库
  2. 在本地笔记本上准备好存放仓库的文件夹
  3. 终端cd到这个文件夹
  4. 输入git init
  5. 接下来要让本地仓库连接远程的,输入git remote add origin + 远程仓库url
  6. 最后下拉git pull origin master

第二步 初始化项目:

  1. 新建项目后输入git add .
  2. 输入git commit --m '初始化项目'提交到本地仓库
  3. 输入git push提交到远程仓库

方法二(对应第一步的方法二)

前两步与法一相同,第三步输入为:
git push origin master

第三步 给项目打上Tag:

每次commit操作都会生成一个40位哈希值的版本号,如果需要标记当前最新这个版本以便以后查用,就需要为这个版本打上Tag

  • 添加
    1. 输入git tag '0.0.1'打上标记
    2. 输入git push --tags提交到远程仓库
  • 删除
    1. 输入git tag -d 0.0.1删除本地仓库
    2. 输入git push origin :0.0.2提交

cocoapods另一种生成Podfile的方法

终端打开项目根目录,然后pod init就会生成Podfile文件

二、上传自己的三方库

组件化(一)_第1张图片

第一步 完成框架源码开发

见“第一步”

第二步 准备spec描述文件

  1. 在根目录路径下输入pod spec create xxxx,xxx是项目的名字
  2. 打开创建好的xxx.podspec文件进行若干配置
    • s.summary的内容要比s.description的短,否则不能通过校验,所以把s.summary的内容减少点最好,比如改成这样
       s.summary      = "XXX."
       s.description  = <<-DESC
                        xxxxxxxxxxxxxxxxxx 
                        DESC
      
    • s.homepage替换为GitHub上源码的url
    • s.license那两行改为
      # s.license      = "MIT (example)"
      s.license      = { :type => "MIT", :file => "FILE_LICENSE" }
      
    • s.source = { :git => "http://EXAMPLE/YHWLib.git", :tag => "#{s.version}" }中的网址替换为框架GitHub的url
    • s.exclude_files = "Classes/Exclude"这一行注释掉,也就是前面加个#号
  3. 提交本地,上传到远程库

第三步 上传spec到远程索引库

  1. 给这个版本的框架添加tag并提交,注意这个tag必须要等于spec文件里version的值
  2. 校验
    • 本地校验pod lib lint
    • 远程校验pod spec lint
  3. 上传
    pod trunk push XXX.podspec
    上传之前需要注册CocoaPods Trunk

第四步 使用

由图知道,本地索引库要先pod setup后才能使用刚上传的三方库

三、pod install和pod update的区别

  • pod install会读取Podfile.lock里三方框架的版本信息,把三方框架升级到指定版本,这样就可以保证大家的三方框架版本都是一致的。如果没有Podfile.lock,则会读取Podfile文件,并生成一个Podfile.lock文件,这个Podfile.lock文件里面的三方框架版本是这样生成的,若Podfile文件里的三方框架指定了版本,就记录该版本信息,若没有则记录最新版本
  • pod update会直接读取Podfile文件

你可能感兴趣的:(组件化(一))