本篇中使用的遠程倉庫是碼市
注意: 默認讀者會使用Git管理代碼, 以及上傳至遠程Git倉庫
如果有錯誤的地方請留言, 我會修改
第一步, 添加遠程私有索引倉庫
-
注冊登錄后的界面
碼市 -
點擊添加項目
遠程私有索引庫 -
點擊創建項目后跳轉界面
創建倉庫后直接跳轉的界面 -
點擊左側 代碼 選項卡, 進入私有的遠程cocoaPods倉庫界面
遠程cocoaPods私有索引倉庫界面 -
打開終端, 輸入指定 pod repo
當前的遠程索引倉庫- 可以看到cocoaPods目前鏈接了一個遠程索引倉庫, URL是在github上的遠程索引倉庫, Path是通過pod setup下載到本地的索引倉庫
-
可以輸入指令 pod repo --help 查看當前pod repo 擁有的命令
命令 -
輸入 pod repo add 倉庫名 倉庫SSH(HTTPS)地址 來添加一個遠程索引倉庫
添加一個遠程索引倉庫 -
倉庫SSH(HTTPS)地址位置在碼市上的下圖位置
倉庫SSH(HTTPS)地址位置 -
再次輸入 pod repo 命令
成功添加LTPodspecs遠程私有索引庫- LTPodspecs就是我剛才添加的遠程私有索引庫
第二步, 配置一個私有的代碼倉庫
-
打開碼市, 新添加項目, 這個項目是被CocoaPods管理的私有代碼倉庫, 用來存儲需要被管理的代碼, 和上面創建的索引庫用處不同
-
我在桌面上創建了一個新的文件夾, 用來配置私有代碼庫
新建文件夾 -
使用終端cd到當前文件夾
cd -
輸入指令創建一個git本地倉庫 pod lib create 倉庫名
git倉庫- 本倉庫用來測試和上傳 私有代碼
-
創建的git本地倉庫
git本地倉庫 -
打開測試工程, 找到
ReplaceMe.m
文件并刪除
打開測試工程
刪除文件 -
找到需要CocoaPods私有倉庫管理的源碼(我這里的是Category文件夾), 并拖拽代碼文件到Classes文件夾中, 選擇
Copy Items if needed
選擇Copy Items if needed
拖拽代碼到Classes文件夾中 -
可以通過
Show In Finder
查看拖入文件夾的所在真實位置
Show In Finder
24.png -
因為測試工程創建完之后引用的LTCategorys文件中并沒有剛拖入的Category文件夾中文件, 所以需要重新pod install一下
-
cd到測試工程文件夾, 并執行命令 pod install
cd到Example文件夾, 并執行pod install
-
此時拖入工程的Category中文件就可以正常使用了, 此時使用的是本地私有庫
-
打開測試工程, 在下面的位置可以進行podspec文件的配置
podspec文件位置 -
簡單解釋
簡單解釋
配置完成- s.homepage需要設置剛創建的私有代碼倉庫的地址, 不是私有索引庫的地址
- s.source 需要設置的是私有代碼倉庫的源地址(選擇使用HTTPS地址)
-
將剛創建的本地倉庫上傳到這個項目中, 并打上tag, 這個tag必須和上面podspec文件中的版本一致(我上面的版本是0.1.0, 所以我打的tag就是0.1.0)
上傳代碼到遠程私有倉庫
打上的tag -
打開終端, cd到LTCategorys文件夾(使用pod lib screate 命令創建的本地代碼倉庫), 分別使用 pod lib lint 和 pod spec lint 命令進行podspec的本地校驗和遠程校驗
cd
校驗 -
以上步驟完成后, 需要將LTCategorys.podspec文件上傳到本地的私有索引庫, 接著會自動上傳至遠程私有庫
- 終端使用pod repo文件查看現有索引庫
-
cd 至 LTCategorys 文件夾下, 接著執行 pod repo push 索引庫名 podspec文件名
查看現有索引庫
上傳到本地索引庫, 自動上傳至遠程索引庫
-
遠程索引庫中的索引文件
遠程索引庫中的索引文件 -
在桌面上創建一個測試工程
新建測試工程 -
cd到Test文件夾, 并使用終端調用pod init命令創建一個Podfile文件
Podfile文件 -
調用pod repo命令, 查看當前索引庫的URL地址
查看URL地址 -
打開Test中的Podfile文件, 如下填寫
介紹
填寫完畢 -
cd 到Test文件夾下, 使用終端執行pod install 命令, 此時兩個第三方代碼就成功安裝到項目中
使用CocoaPods安裝第三方代碼 -
打開Test工程, 可以看到安裝的第三方庫, 一個是AFNetworking(公共庫) 和 LTCategorys(遠程私有庫)
Test工程
最后
- 創建的LTPodspecs私有庫是用來存放CocoaPods索引文件(podspec類型)的
- 創建的LTCategorys私有庫是用來存放遠程私有代碼的(同github分享開源代碼)
- 使用LTPodspecs來存放LTCategorys的podspec文件, 就是遠程私有庫的核心
- 最后使用CocoaPods就可以安裝私有庫中的代碼了, 私有庫中代碼只有自己和自己指定的人使用 (其他人使用, 必須添加你的CocoPods私有庫, 并且要在你的碼市賬號中設置SSH的公鑰才行)
- 以后的私有遠程代碼也可以使用這個LTPodspecs索引庫來管理