一、上傳專案到github
將框架中的主要檔案放入到一個指定資料夾中,比如叫Classes或者Lib都可以
- 開啟終端,cd到框架目錄
cd /Users/lxf/xxxx/LXFPhotoHelper
複製程式碼
- 初始化倉庫
git init
複製程式碼
- 將當前目錄新增到快取區
git add .
複製程式碼
- 提交到本地倉庫
git commit -m '描述'
複製程式碼
- 新增遠端倉庫地址
git remote add origin https://github.com/LinXunFeng/xxx.git
複製程式碼
- 提交到遠端倉庫
git push origin master
複製程式碼
如果出現如下提示
fatal: unable to access 'https://github.com/xxx/xxx.git/': The requested URL returned error: 403
複製程式碼
原因是本地快取了使用者名稱和密碼 編輯.git目錄下的config檔案
vi .git/config
複製程式碼
找到url那一行,在github.com前加上使用者名稱後儲存,再重新執行推送操作
url = https://LinXunFeng@github.com/LinXunFeng/xxx.git
複製程式碼
- 打標籤
// 具體說明可以執行`git tag --help`後檢視
// git tag -a '版本號' -m 'tag描述'
// 注意一下,這裡打的標籤只是在本地
git tag '0.0.1'
複製程式碼
- 推著所有標籤至遠端倉庫
// 只推著指定版本
// git push origin 版本號
git push --tags
複製程式碼
二、建立並修改podspec檔案
- 建立Spec檔案
// 名稱一般與工程名稱保持一致
pod spec create 框架名稱
複製程式碼
- 修改Spec檔案
s.name = "LXFPhotoHelper(倉庫名稱)"
s.version = "0.0.1(版本號,這裡跟下面s.source中的tag有關)"
s.summary = "對你自己倉庫的簡單描述,不要寫太多字"
s.description = "這個是詳細描述,這裡需要注意的是,這裡文字的長度需要比
s.summary的要長,不然會出現警告"
s.homepage = "倉庫首頁地址,如https://github.com/LinXunFeng/LXFPhotoHelper"
s.license = "MIT"
s.author = { "LinXunFeng" => "598600855@qq.com" }
# source存放的地址是程式碼的真正地址
s.source = { :git => "倉庫對應的git地址,如https://github.com/LinXunFeng/LXFPhotoHelper.git", :tag => "#{s.version}" }
# pod install時真正下載下來的檔案路徑,這裡指定的是你倉庫下的Classes目錄中的所有.h和.m檔案(填寫的是相對地址)
# ** 通配目錄
s.source_files = "Classes", "Classes/**/*.{h,m}"
# s.library = "sqlite3" # 框架依賴系統的sqlite3
複製程式碼
也可以上官網的手冊【Podspec Syntax Reference】上檢視
這裡需要我們注意的是s.version= "0.0.1"
,這裡的版本號要與剛剛打的tag一致
三、註冊trunk
// --verbose 列印詳情資訊
// pod trunk register 郵箱 '你的名稱' --verbose
pod trunk register 598600855@qq.com 'LinXunFeng' --verbose
複製程式碼
然後去驗證郵箱
驗證成功後會提示我們回到終端,並敲入pod trunk push 名稱.podspec
四、上傳Spec
執行pod trunk push
後會有一個稽核的過程,如果提示沒有通過,有ERROR就修改好後重新push,如果只是WARN可以選擇在pod trunk push
後面加上--allow-warnings
來忽略它們
pod trunk push LXFPhotoHelper.podspec --allow-warnings
複製程式碼
如果出現如下資訊,則說明你的框架名字已被佔用,得重新改個名字~ 所以,在建立你自己的cocoapods倉庫時最好是到cocoapods.org上先查一下有沒有相同名字的
[!] You (xxx@qq.com) are not allowed to push new versions for this pod. The owners of this pod are yyy@qq.com.
複製程式碼
上傳成功後會自動幫我們更新本地倉庫,如果無法搜尋到自己的框架,可以先刪掉本地的索引檔案後再搜尋一次
rm ~/Library/Caches/CocoaPods/search_index.json
複製程式碼
當使用pod search 命令可以搜尋自己的框架時, 那麼就意味著稽核通過了