在构建ios的时候,我们需要第三方的库,像AFNetworking,我们通过cocopods管理这些第三方库
但是对于我们自己的一些公共代码,底层代码,我们最好也通过这种方式管理
原因:可以保证底层公共代码的一致性,因为公司可能会有多个app,但是他们会共用一套底层代码,这样就可以保证底层代码的一致性,因为代码只有一份
1,首先我们为底层代码建立一个git仓库
git init
git remote add origin https://github.com/SayHelloWorld/shujujiexi.git
git add .
git commit -m '...'
git push -u origin master
2,为底层代码建立spec文件
pod spec create Datajiexi //Datajiexi是文件名
会生成Datajiexi.podspec文件
编辑文件
Pod::Spec.new do |s|
s.name = "Datajiexi"
s.version = "0.0.1"
s.summary = "shujujiexi"
s.description = <<-DESC
shujujiexi
DESC
s.homepage = "http://baidu.com"
s.ios.deployment_target = '7.0'
s.license = "MIT"
s.author = { "hlq" => "zhiyuan370784@163.com" }#
s.source = { :git => "https://github.com/SayHelloWorld/shujujiexi.git", :tag => "#{s.version}" }
s.source_files = "shujujiexi/**/*.{h,m}"
s.exclude_files = "Classes/Exclude"
end
编辑完需要验证是否有效
pod lib lint
如果出现警告使用
pod lib lint --allow-warnings
忽略警告
3,为主工程代码添加git和cocopods管理
git init
git remote add origin https://github.com/SayHelloWorld/USTBNew.git
git add .
git commit -m '...'
git push -u origin master
pod init
4,为主工程配置podfile文件,将底层代码通过pod加入项目
target 'USTBNew' do
pod 'Datajiexi',:path=>'../shujujiexi'#Datajiexi spec文件名,shujujiexi是文件夹
end
打开工程就可以看到加入的主工程的底层代码
说明:主工程的git仓库不会管理pod内的代码,也就是说,把主工程push到origin的时候不会push pod内的代