由于本人是使用Sourcetree來使用私有庫的,所以底部也會有相對應(yīng)的命令去更新私有庫
添加完之后要在預(yù)編譯文件添加頭文件

在podspec里面升級版本號

在Podfile.lock里面升級版本號

通過后可以提交代碼:
git add .
git commit -m "提交代碼"
git push origin master 或者 git push
如果錯(cuò)誤
這個(gè)問題是因?yàn)檫h(yuǎn)程庫與本地庫不一致造成的,那么我們把遠(yuǎn)程庫同步到本地庫就可以了。
git pull --rebase origin master
成功后打tag 必須跟podspec里的一樣
git tag -a '0.2.06' -m "搜索控件UI需求修改"
git push --tags
成功以后把私有庫推到本地
pod repo push KLSpecs KLCategory.podspec --allow-warnings
如果成功,這時(shí)
open ~/.cocoapods/repos/
目錄下的 KLSpecs — UIComponent 出現(xiàn)新的版本號。
完成,可以在項(xiàng)目里更新下來使用了。
自己需要輸入的是
1 git add .
2git commit -m "second"
3git push -u origin master
4git tag 0.1.1
5git push origin 0.1.1
6 apple$ pod repo push LBTestSpec /Users/apple/Desktop/KIT/LXBTestKit/LXBTestKit.podspec --allow-warnings
5、通過后可以提交代碼:
git add .
git commit -m "提交代碼"
git push origin master 或者 git push
如果錯(cuò)誤
這個(gè)問題是因?yàn)檫h(yuǎn)程庫與本地庫不一致造成的,那么我們把遠(yuǎn)程庫同步到本地庫就可以了。
git pull --rebase origin master
6、成功后打tag 必須跟podspec里的一樣
git tag -a '0.2.06' -m "搜索控件UI需求修改"
git push --tags
7、成功以后把私有庫推到本地
pod repo push KLSpecs UIComponent.podspec --allow-warnings
如果成功,這時(shí)/Users/zhufenghua/.cocoapods/repos/ 目錄下的 KLSpecs — UIComponent 出現(xiàn)新的版本號。
完成,可以在項(xiàng)目里更新下來使用了。
在做私有庫的時(shí)候,執(zhí)行 push 操作的時(shí)候,報(bào)如題的錯(cuò)誤。
pod repo push [repo] [podspec]
但是執(zhí)行pod lib lint的時(shí)候,本地驗(yàn)證卻是可以通過的。
然后參考Stack Overflow和google的一些答案,都沒能解決。這里就不貼嘗試過的別的答案了。
最終經(jīng)過反復(fù)調(diào)試,發(fā)現(xiàn) 是自己沒有把本地版本、tag版本、遠(yuǎn)程提交版本同步好。也就是它們之間存在不一致。
我本地驗(yàn)證可以通過,但是沒有通過git add .把發(fā)生修改的文件提交到緩沖區(qū),也沒有git commit -m "XX"提交到本地倉庫。這個(gè)時(shí)候打的tag,是從本地倉庫打的tag。所以就出現(xiàn)了和本地現(xiàn)在的代碼不同步。
所以正確的步驟,是把代碼都提交到本地倉庫后,再重新打 tag 然后重新push就可以通過了。
因?yàn)橹岸际怯?source tree。現(xiàn)在直接上手git操作有點(diǎn)不太熟練,導(dǎo)致犯下了低級錯(cuò)誤。這個(gè)問題確實(shí)挺難找的。如果沒有意識到是代碼不同步的話,很可能會被網(wǎng)上很多答案給帶偏了。
希望我的這種解決能夠幫助到有類似問題的人。
以下是我創(chuàng)建私有庫過程中用到的一些命令
pod命令
pod spec create XTProtocolManager//生成pod庫配置文件
pod init//生成Podfile
pod lib lint//驗(yàn)證lib
pod repo push [repo] [podspec]
pod repo push [repo] [podspec] --verbose --allow-warnings
git命令
git init//初始化
git status//查看狀態(tài)
git add .//添加文件到緩沖區(qū)
git commit -m "描述"http://從緩沖區(qū)提交代碼到倉庫
git tag -a '0.0.1' -m '描述'//添加tag
git tag //查看tag
git tag -d '0.0.1'//刪除tag
git remote add origin https://github.com/xxx.git//關(guān)聯(lián)本地倉庫和遠(yuǎn)程倉庫。
git push -f origin master//將本地庫的代碼推到遠(yuǎn)程庫
git push --tags//將本地創(chuàng)建的tag推到遠(yuǎn)程庫
git push origin :0.0.1//刪除tag
參考:
podspec specification does not validate 問題解決
記錄一次cocoapod私有庫更新
用Gitblit創(chuàng)建cocoapods遠(yuǎn)程私有庫
準(zhǔn)備提交到cocoapods的遇到的坑
iOS 私有pod庫的發(fā)布流程