原本看了教程 上传代码到CocoaPods库-组件化必备-GitHub已经成功的将项目上传,但是在接下来我用这个方法的时候,遇到了新问题,可能是我本地环境出了问题,在pod lib create
出现了错误,出现了下面的情况
一直没有解决,最后在github上提了 issue,
解决办法 sudo gem update xcodeproj
-
在 Github上创建自己的仓库
-
将远程仓库clone到本地,我用的sourcetree
-
在本地仓库中新建项目或者将已经写好的项目拖过来
上传CocoaPods
1.生成podspec
cd 本地仓库的根目录
pod spec create ISGHttpClient
本地会生成一个 ISGHttpClient.podspec
ISGHttpClient.podspec
2.在本地创建文件夹,将其拖入项目中,pod中所使用的代码都在这个目录下
创建文件夹3.编写完项目并编译,保证没有错误
4.编辑podspec
Pod::Spec.new do |s|
s.name = "ISGHttpClient"
s.version = "0.1"
s.summary = "ISGHttpClient."
s.description = <<-DESC
网络请求,AFNetworking的简单封装
DESC
s.homepage = "https://github.com/Isaaclzg/ISGHttpClient"
s.license = "MIT"
s.author = { "isaac_gang" => "isaac_gang@163.com" }
s.platform = :ios, "8.0"
s.source = { :git => "https://github.com/Isaaclzg/ISGHttpClient.git", :tag => "#{s.version}" }
s.source_files = "ISGHttpClient", "ISGHttpClient/**/*.{h,m}"
s.framework = "Foundation"
s.dependency "AFNetworking", "~> 3.2.1"
end
5.没有问题以后将所有文件推到远程仓库
本地仓库目录
cd /Users/isaac/Desktop/Github/ISGHttpClient
查看临时文件
git status
将临时文件添加到缓存区
git add .
提交代码到本地仓库
git commit -m '创建ISGHttpClient,版本号0.1'
提交本地代码仓库的代码到远程代码仓库
git push -u origin master -f
创建标签,这里的标签一定要和.podspec文件里面的version后面的版本一致
git tag '0.1'
提交标签
git push --tag
6.远程检测代码仓库是否有问题
项目未引用第三方库时
pod spec lint --allow-warnings
当项目引用第三方库时(在后面加上--use-libraries,后面的pod trunk push也是一样)
pod spec lint --allow-warnings --use-libraries
当出现HttpClient.podspec passed validation.
时,证明没有问题,可以继续提交。
7.注册CocoaPods信息
查看自己的注册信息
pod trunk me
如果没有注册过,输入下面的命令 并根据命令进行注册
pod trunk register xxx@xxx.com 'name'
注册之后邮箱会收到一封确认邮件,点击验证,如果多人维护pod 可以添加其他维护者
pod trunk add-owner name xxx@xxx.com
8.向远程代码索引库提交spec
pod trunk push --allow-warnings
pod trunk push --allow-warnings --use-libraries
出现下面的图片证明已经上传成功了
上传成功
9. 搜索自己创建的库
pod search ISGHttpClient
如果刚刚上传完,你可能搜索不到,执行下面的操作
rm ~/Library/Caches/CocoaPods/search_index.json
pod search ISGHttpClient
稍等片刻,就能看到自己的库了
网友评论