GitLab構(gòu)建自己的私有庫(kù)

1.創(chuàng)建私有庫(kù)工程

1)新建工程,選擇Static Library,取名NicolasLibs


1-1 新建靜態(tài)庫(kù)
1-2 工程取名

2)創(chuàng)建自己的文件,我創(chuàng)建一個(gè)打印類(lèi)


1-3 創(chuàng)建一個(gè)打印工具類(lèi)

2.在gitlab創(chuàng)建一個(gè)code repository(代碼倉(cāng)庫(kù)), 一個(gè)spec repository(配置倉(cāng)庫(kù))

還可以使用github(私有需要收費(fèi)) 、開(kāi)源中國(guó)、CODING、Bitbucket、CSDN code都可以3
1)在gitlab 點(diǎn)擊+,創(chuàng)建代碼倉(cāng)庫(kù)
注意:勾選生成readme.md文件,不然后面會(huì)push不了,當(dāng)然可以后面創(chuàng)建

2-1 創(chuàng)建代碼倉(cāng)庫(kù)

2)同樣的步驟創(chuàng)建配置倉(cāng)庫(kù)(注意名字區(qū)分),最后得到兩個(gè)私有倉(cāng)庫(kù)


2-2 倉(cāng)庫(kù)創(chuàng)建完成效果

3.使用SourceTree工具克隆兩個(gè)倉(cāng)庫(kù)到本地,并把步驟1中代碼提交到代碼倉(cāng)庫(kù),并打 tag

1)克隆兩個(gè)倉(cāng)庫(kù)到本地:不知道怎么克隆的,自行百度哈


3-1 克隆完后的結(jié)果

拉取后,別忘了執(zhí)行g(shù)itlabe官方的一些命令,比如設(shè)置用戶名與git賬號(hào)等

2)將步驟1 代碼,提交,并打tag


3-2 右擊提交記錄--標(biāo)簽

注意:勾選推送標(biāo)簽

3-3 填寫(xiě)tag,需要勾選推送

4.創(chuàng)建和編輯三個(gè)文件

1)創(chuàng)建和編輯README.md、創(chuàng)建和編輯LICENSE
 這個(gè)文件在github中也有,是項(xiàng)目的說(shuō)明文件,根據(jù)自己的項(xiàng)目做一些說(shuō)明.打開(kāi)終端,cd到工具類(lèi)文件所在的路徑下


4-1 創(chuàng)建兩個(gè)文件

2)創(chuàng)建和編輯.podspec文件,這一步很關(guān)鍵
打開(kāi)終端,輸入 cd ~/ 命令

cd ~/

為了維護(hù),建議名字跟工具類(lèi)所在項(xiàng)目名一樣,進(jìn)入到根目錄后創(chuàng)建一個(gè)名字叫NicolasLibs.podspec的文件

pod spec create NicolasLibs
4-2生成文件

使用vim進(jìn)行編輯,或者直接使用記事本打開(kāi)編輯(我選擇后者)

vim NicolasLibs.podspec

清空,然后按下面的格式替換成你自己的私有庫(kù)

Pod::Spec.new do |s|
  s.name         = "NicolasLibs"
  s.version      = "1.0.2" #當(dāng)前版本
  s.summary      = "NicolasLibs a hello " #描述
  s.homepage     = "xxxxxx/Nicolas/nicolascoderep.git" #庫(kù)文件主頁(yè)地>址
  s.license      = 'MIT'
  s.author       = { '開(kāi)發(fā)者名字' => '開(kāi)發(fā)者賬號(hào)' }  #開(kāi)發(fā)者
  s.source       = { :git => 'xxxxxxxxxx:Nicolas/nicolascoderep.git', :tag => s.version.to_s } #文件的git地址,以及當(dāng)前版本對(duì)應(yīng)的tag
  s.source_files = 'NicolasLibs/NicolasLibs/*' #文件所在的目錄,后面*是一個(gè)正則表達(dá)式,目錄我下面會(huì)有解釋
 # s.source_files = 'NicolasLibs/NicolasLibs/*.{h,m}' #文件所在的目錄,后面*.{h.m}是一個(gè)正則表達(dá)式,目錄我下面會(huì)有解釋
 # s.resources    = 'NicolasLibs/NicolasLibs/*.xib' #資源文件所在的目錄圖片,xib等,這個(gè)demo沒(méi)有用到
  s.framework    = 'UIKit' #當(dāng)前這個(gè)庫(kù)所依賴的系統(tǒng)的庫(kù)
  s.platform     = :ios,"9.0"
  s.requires_arc = true #是否支持arc
   s.swift_version = '5.0'
end

編輯完按Esc 并輸入:wq下面的命令進(jìn)行保存

:wq

3)進(jìn)入終端進(jìn)行驗(yàn)證,根目錄

pod spec lint NicolasLibs.podspec --allow-warnings

出現(xiàn)passed validating則說(shuō)明驗(yàn)證成功


4-3 驗(yàn)證成功狀態(tài)

5.創(chuàng)建本地的私有倉(cāng)庫(kù)文件

1)使用下面的命令就可以在本地生成配置文件的倉(cāng)庫(kù),建議這個(gè)本地的名字也和遠(yuǎn)程的一致,這樣便于區(qū)分和后期的維護(hù).
NicolasSpecRep 是你遠(yuǎn)端創(chuàng)建的配置文件倉(cāng)庫(kù)的名字,后面是配置文件倉(cāng)庫(kù)遠(yuǎn)端的地址 .
注意:此時(shí)不需要cd進(jìn)入任何目錄,從默認(rèn)位置輸入這個(gè)命令,即在點(diǎn)擊終端快捷方式打開(kāi)的狀態(tài)下直接輸入下面的命令即可

pod repo add  NicolasSpecRep  https://xxxxx/Nicolas/nicolasspecrep.git

2)查看是否添加成功

pod repo list

如果出現(xiàn)NicolasSpecRep則說(shuō)明添加成功


5-1 添加成功

或者查看本地目錄是否有NicolasSpecRep文件夾 (隱藏顯示文件顯示快捷鍵cmd+shift+.)


5-2 本地目錄查看

6.將配置文件push到遠(yuǎn)端的配置倉(cāng)庫(kù)

1)將配置文件push到遠(yuǎn)端專(zhuān)門(mén)存儲(chǔ)配置文件的倉(cāng)庫(kù)中 ,本地的也會(huì)同步更新
此時(shí)需要cd進(jìn)入本地的.podspec所在的路徑,默認(rèn)是根目錄,否則會(huì)找不到podspec文件
使用下面的命令即可,有問(wèn)題可以參考報(bào)錯(cuò)信息去修改
JXSpecRep 是你創(chuàng)建的spec repository配置倉(cāng)庫(kù)的名字,后面是你本地創(chuàng)建的.podspec文件

pod repo push  NicolasSpecRep NicolasLibs.podspec --allow-warnings

出現(xiàn)下面信息則成功了


6-1 push成功頁(yè)面

本地也會(huì)增加一個(gè)版本


6-2 本地驗(yàn)證

3)云端也能查看到

7.確認(rèn)制作完成并使用

1)查詢是否有我們需要的私有庫(kù)

pod search  NicolasLibs

出現(xiàn)下圖


7-1 查詢頁(yè)面

2)新建一個(gè)測(cè)試項(xiàng)目,并初始化pod

pod init

編輯podfile 文件,使用vim或者直接用記事本筆記

source '..../Nicolas/nicolasspecrep.git' //遠(yuǎn)端配置倉(cāng)庫(kù)url
  pod 'NicolasLibs'

3)cd 到測(cè)試工程根目錄,執(zhí)行pod install

pod install

inport導(dǎo)入并使用


7-2 私有庫(kù)的使用

8.更新

1)修改私有庫(kù)代碼,并提交遠(yuǎn)程倉(cāng)庫(kù),并打新的tag
2)編輯.podspec 文件,修改成tag對(duì)應(yīng)的版本
3)進(jìn)入終端進(jìn)行驗(yàn)證,根目錄

pod spec lint NicolasLibs.podspec --allow-warnings

4)push推送到云端

pod repo push  NicolasSpecRep NicolasLibs.podspec --allow-warnings

5)測(cè)試工程修改podfile中私有庫(kù)版本,執(zhí)行pod update 命令

pod update

后在執(zhí)行

pod install

參考網(wǎng)上文章寫(xiě)的,如有疑問(wèn),歡迎留言

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容