之是以建構私有spec,是因為公司的好多東西都是通用的,有的時候也許其他的項目中也要用到,是以最好的方式就是把它建構成庫,直接
<code>pod install</code>
首先,請確定你知道如何去把自己的github上的代碼庫添加cocoapods支援。因為搭建私有spec和上述部落格上的内容大同小異,但是又有很大差異。
這裡将從最初的開始進行介紹,包括在公司gitlab上建構項目,然後到最後的其他公司項目中使用cocoapods引入自己建構的庫。
步驟如下:
1、建立私有的spec repo
2、将私有spec repo關聯到本地
3、建構自己在公司内部共享的庫
4、把要共享的庫添加到私有spec repo中
5、成功完成,開始使用
1建立私有的spec repo
2 将私有spec repo關聯到本地
打開終端,輸入指令行:
<code>pod repo add [本地spec repo名稱][遠端spec repo位址]</code>
例如我的:
<code>pod repo add myspecs https://xxxxxxxxxxx/zhanggui/myspecs.git</code>
這裡的xxxxxxx就是自己公司的git位址。
此時跳轉到檔案夾:repos。就是:
<code>~/.cocoapods/repos/</code>
你就會發現除了有一個master,還有就是你自己的myspecs:

然後切換到自己建構的私有spec:
<code>cd ~/.cocoapods/repos/[本地spec repo名稱]</code>
<code>cd ~/.cocoapods/repos/myspecs</code>
然後執行:
<code>pod repo lint</code>
執行完之後,就完成了第二步。(這裡執行這個指令後,我終端顯示-----------------,好多,然後執行完了就行了,貌似時間有點長,請耐心等待)。
3 建構自己在公司内部共享的庫
這裡就是你将自己需要共享的庫先在自己公司gitlab上建立工程,然後将這個工程目錄下建立 .podspec(注意修改該檔案裡面的資訊,不會可以參考上篇部落格)。并且校驗是否通過。通過之後将代碼送出到gitlab。
ok,第三步完成。
4 把要共享的庫添加到私有spec repo中
首先,這裡你先到你要共享的工程的gitlab上添加一個tags,記得版本号和podspec裡面的版本号一緻(這裡很重要)。
更簡單的完成第四步(一定要確定第三步的驗證通過),執行指令:
<code>pod repo push [本地spec repo名稱][podspec檔案路徑] --allow-warnings</code>
<code>pod repo push myspecs ~/zhanggui/mytools.podspec --allow-warnings</code>
成功之後應該是這樣的:
這樣你就可以在你的myspecs檔案夾下看到自己的mytools了。應該是這樣:
ok,第四步就完成了。
成功完成,開始使用
和原來的正常的使用cocoapods一樣,隻不過有點小差別,你需要在podfile裡面添加以下兩句代碼:
<code>source 'http://xxxxxxxxxxx/zhanggui/myspecs.git'</code>
<code>source 'https://github.com/cocoapods/specs.git'</code>
這裡就是告訴pod install的時候查找的庫來自公共庫和私有庫。例如我的podfile:
<code>source 'http://xxxxxxxxxxx/zhanggui/myspecs.git</code>
<code>platform :ios, '8.0'</code>
<code>use_frameworks!</code>
<code>target 'mydemo' do</code>
<code>pod 'toast'</code>
<code>pod 'mytools'</code>
<code>end</code>
接下來就可以使用了。
百度、google了多篇文檔,然後進行總結,終于實作建構公司私有cocoapods庫。極大地友善了代碼的複用性。
如果問題,請聯系:qq:948602689