Upsource的安裝和與JetBrains產(chǎn)品的集成
JetBrains的工具一直都是我開發(fā)和學(xué)習(xí)的好幫手,本人工作主要是iOS開發(fā),使用的是AppCode,而這里主要介紹下JetBrains的代碼審查工具Upsource,它把代碼審查做成了類似社交工具的效果,可以在不修改代碼的情況下對代碼進行注釋和評論,然后再讓相關(guān)人員去進行修復(fù),而且有很多人性化的小功能。這里首先說下其安裝和集成步驟。
這里IDE我用的是AppCode,版本控制則是SVN。
注意:這里僅按照mac系統(tǒng)來寫的,windows系統(tǒng)最好參考下官網(wǎng)的具體說明,但是基本上大同小異。
一、下載和安裝
首先去官網(wǎng)下載最新版本的Upsource,點擊跳轉(zhuǎn)到下載地址,這里我使用的是蘋果的mac系統(tǒng),但是目測windows下載下來解壓后和mac都類似。目錄如下:
這個解壓后的文件夾其實已經(jīng)可以當(dāng)做軟件包了,里面包括了它的各種依賴等等,Upsource是基于java寫的,已經(jīng)內(nèi)置了java7,也可以自定義引入java8,官網(wǎng)說明有詳細的命令行教程,但是目測會有點小問題,不太建議重新引入,畢竟你不用去修改人家源代碼。
bin目錄下即是Upsource的命令行工具,我這里是mac系統(tǒng),使用.sh
結(jié)尾的文件upsource.sh
即可,使用之前,最好是在root權(quán)限下進行,如下:
sudo -i
之后輸入密碼即可。windows系統(tǒng)則使用upsource.bat
隨后運行命令行工具,直接把upsource.sh
文件拖入命令行工具后空格輸入start
:如下
JeffreydeMacBook-Pro:~ jeffrey$ /Users/jeffrey/Soft/upsource-2017.1.1821/bin/upsource.sh start
上面的/Users/jeffrey/Soft/upsource-2017.1.1821
為我Upsource文件夾本地路徑,對應(yīng)換成自己的即可,如果是拖到命令行去的,則路徑已經(jīng)是對應(yīng)自己的Upsource文件夾的路徑了。
start命令執(zhí)行后,等待系統(tǒng)安裝完即可。最后命令行結(jié)果如下:
二、設(shè)置
1.URL設(shè)置
start執(zhí)行完畢后會打開默認設(shè)置的xxx-pro.local:8080這個地址,xxx-pro.local為你服務(wù)器地址,需要配置,配置這塊目前還沒過多的查看,這里只做簡要安裝集成介紹,這里只需要知道是其實是把Upsource部署在了localhost:8080即可。因為xxx-pro.local是沒有配置的,所以默認打開的地址肯定是無效的,不管它,直接手動輸入localhost:8080或者把localhost改成你的ip地址(端口號別忘了寫)。這樣你會看到Upsource的正式頁面了,如下:
點擊Set up進行設(shè)置,進入如下頁面:
把默認的Base URL修改掉,因為那個地址是無效的,如果需要有效需要自己去配置。
Application Listen Port端口號可以自己修改成自己想設(shè)置的,這里使用默認的8080沒有修改。之后點擊下一步,進行賬戶設(shè)置。
2.賬戶設(shè)置
點擊后界面如下:
管理員賬戶用戶名修改成自己想要的,然后輸入密碼并重復(fù)密碼即可。
3.許可
默認的是免費的許可,只能10個人使用,可以點擊申請60天的10000人的許可。目前我這邊只是前端iOS開發(fā),就2個人,會審查下自己和同事的代碼,所以暫時免費的已經(jīng)夠用了。如果比較大型的公司或者團隊,可能需要使用收費的。這里直接點擊Finish完成。
4.等待安裝完成
這個可能會花費一點時間,但是如果你之前在設(shè)置Base URL的時候沒有設(shè)置為localhost:8080,那么這里會一直卡在這個等待頁面不成功,你最好重新安裝下(注意,最好重新解壓壓縮文件用新解壓的文件重新來一遍)
最后完成后就是如下頁面:
輸入之前設(shè)置好的管理員賬號即可進入管理頁面
三、創(chuàng)建項目
1.配置填寫
點擊右上角登錄,使用之前的管理員登錄,然后點擊create a project創(chuàng)建一個新項目如下圖:
填寫好項目名稱project name,下面的Porject ID和Code review ID Pattern直接用系統(tǒng)自動生成的即可。
?VCS版本控制工具這里我使用的是SVN,認證方式選的中間的賬號密碼認證。這里需要注意下Branches的填寫,理論上你svn的路徑下應(yīng)該有trunk(主分支),Branches(其他分支)和tags(保存的歷史版本),這里默認幫你填寫了trunk和Branches,如果你直接管理你當(dāng)前的的項目,那么這些需要刪除掉,讓Branches里面留空白即可,我這里svn路徑下項目已經(jīng)是我要管理的當(dāng)前版本了(相當(dāng)于trunk),所以Branches里面是都刪除掉了的。最后點一下Test connection,如果成功,點擊最下面的Create project完成即可。
注意:我這里svn使用的是https的協(xié)議,會報一個錯誤:
svn: E200015: Server SSL certificate for 'https://xxx.x.x.xx:8443' rejected, consider testing your SSL certificate with https://www.ssllabs.com/ssltest
這里xxx.x.x.xx是我ip地址。這個報錯主要是因為svn使用了自簽證書,如果你的svn使用的也是https協(xié)議且是自簽證書,那么需要單獨處理下
2.svn若使用的是https協(xié)議自簽證書的處理
猜測Upsource應(yīng)該和大部分前端工具一樣,已經(jīng)內(nèi)置了常規(guī)的國際信任的證書,但是自簽名證書不包括在內(nèi),這里就需要把你svn的自簽證書導(dǎo)入到Upsource密鑰庫中去。
首先你需要把證書下載下來,你可以通過直接在瀏覽器輸入你的svn的地址,我這里是火狐的瀏覽器,其他瀏覽器請自行在安全選項里把對應(yīng)的證書導(dǎo)出來。
選擇導(dǎo)出,導(dǎo)出到自己指定的一個路徑即可。
然后開始使用鑰匙串的命令行工具進行證書導(dǎo)入。記得首先進入root權(quán)限:
JeffreydeMacBook-Pro:~ jeffrey$ sudo -i
JeffreydeMacBook-Pro:~ root# keytool -import -alias my_svn_alias -keystore /Users/jeffrey/Soft/upsource-2017.1.1892/internal/java/mac-x64/lib/security/cacerts -file /Users/jeffrey/Desktop/5a8948a593e2424.cer
具體解釋:
第一行進入root權(quán)限,keytool -import -alias為鑰匙串的命令行指令,導(dǎo)入的意思,其中-alias是別名的意思,后面自己起個名字,我隨便起的叫my_svn_alias,這個是在密鑰庫里你這個證書的別名叫什么-keystore 后面接密鑰庫路徑,具體的路徑如下圖:
在Upsource文件夾里找到對應(yīng)系統(tǒng)的cacerts文件即可,我這里的路徑是/Users/jeffrey/Soft/upsource-2017.1.1892/internal/java/mac-x64/lib/security/cacerts
,-file后面跟你要導(dǎo)入到密鑰庫的本地證書的路徑,我這里是/Users/jeffrey/Desktop/5a8948a593e2424.cer
,這個就是之前從瀏覽器導(dǎo)出的證書。
大致意思其實就是使用命令行把路徑/Users/jeffrey/Desktop/5a8948a593e2424.cer
的這個證書,導(dǎo)入到了Upsource里的/Users/jeffrey/Soft/upsource-2017.1.1892/internal/java/mac-x64/lib/security/cacerts
這個密鑰庫文件中
如果命令行輸入沒有問題,那么會繼續(xù)提示你需要輸入密鑰庫的密碼(導(dǎo)入到密鑰庫中需要這個密鑰庫的密碼),Upsource自帶的密碼為默認的changeit,之后提示是否信任,輸入y即可,最后會提示證書已添加到密鑰庫中。最后回到Upsource配置svn的頁面在測試下,就不會報錯而是成功了,點擊左下角Create project即可。等待一會,則會顯示成功后的第一個項目頁面了:
四、IDE中集成
1.checkout項目
checkout一份項目下來,具體JetBrains的svn用法可以參考我另外一篇文章文章還是使用Appcode,但是目測大部分JetBrains的版本控制工具用法都是一樣的,包括安卓studio。
2.安裝插件
JetBrains已經(jīng)開發(fā)了Upsource的相關(guān)插件,左上角點擊Appcode->Preference->Plugins->Install JetBrains plugins,搜索Upsource,找到Upsource Integration安裝并重啟IDE:
3.插件配置
checkout項目后,IDE右下角你回發(fā)現(xiàn)Upsource的小圖片,點擊:
配置好Upsource的路徑,填寫為之前設(shè)置好的Base URL,即:http://localhost:8080:
4.關(guān)聯(lián)登錄
點擊“OK”后,會自動進入網(wǎng)頁中,需要關(guān)聯(lián)登錄,入住對應(yīng)的賬號登錄并接收即可,最后關(guān)閉后即可和IDE相關(guān)聯(lián)了。
最后成功后的結(jié)果如下:
可以看到,左下角選擇器多出來了一個Reviews,右下角的Upsource的圖標已經(jīng)點亮。
至此,如何安裝已經(jīng)介紹完,后續(xù)會深入研究后會再具體說明Upsource的使用。目前關(guān)于URL這塊的配置沒有太詳細的深入了解,大致看了下,配置完一些地方后,是可以進行外網(wǎng)連接且自定義域名的,類似剛開始默認的域名,個人覺得就是一個推薦的域名,但是需要你讓它可用,否則默認是打不開。