从Jenkins或Gerrit上获取拉代码和编译命令
從Jenkins或Gerrit上獲取拉代碼和編譯命令
在解一個新平臺的bug時,有時候我們需要去拉新平臺的代碼和知道編譯命令,這時候我們一般是去找對應的release manager或去問SPM,這其中就會增加溝通成本,這時候如果我們能自己去公司的Jenkins或Gerrit上獲取這些信息,就會達到高效、快速的效果。
1. 從Jenkins上去尋找
前提:到Jenkins上去找對應項目的這些信息,前提是需要SPM給你開相應的權限,如果沒有權限,是看不到這些信息的。
1.1 沒有權限時
當你沒有權限的時候,在Jenkins上進入對應項目的任務時,一般顯示如下:
你會發現Jenkins上只顯示了“返回面板”、“狀態”、“修改記錄”,沒有其他配置相關的入口。
1.2 有權限時
當SPM給你開了對應項目的Jenkins任務權限時,在Jenkins上進入對應項目的任務時,一般顯示如下:
這時候你就會發現與沒有權限的時候相比,多了“Build with Parameters”、“配置”、“Email Template Testing”、“Job Config History”這四個入口。
然后進入到“配置”—>構建—>Execute shell中:
在上面的路徑中,就可以找到我們想要的拉代碼命令和編譯命令。
2. 從Gerrit上去尋找
到Gerrit上去找拉代碼和編譯命令時,是不需要SPM開權限的,只要你有從公司Gerrit上拉代碼的權限就行(作為程序員這個權限應該是從進入公司的第一天就有了)。
到公司的Gerrit上,通過項目的關鍵字尋找:
在Projects—>List—>Filter中輸入項目的關鍵字。
搜索結束后,找到項目對應的manifest文件:
點擊進入到manifest文件中:
這時候我們就找到了git clone manifest文件。其中 :
ssh://salmonzhang@ppgerrit.com:29418/AmlogicT950/manifest是遠程倉庫名。
將manifest文件git clone到本地:
clone到本地后,在manifest倉庫中選擇自己想要的xml文件。
找到遠程倉庫名和自己想要的xml文件后,就可以拼接拉取代碼的命令:
那我們這里就是:
repo init -u ssh://salmonzhang@ppgerrit.com:29418/AmlogicT950/manifest -m Amlogic_T960_T950_BiuOS2.0.xml執行拉取代碼的命令,然后repo sync 同步下代碼。
這里需要對repo略懂,如果還不太熟悉的朋友,可以看下我以前寫的一篇的repo學習總結:
repo學習總結
repo sync命令執行完成后,這時候代碼就已經拉下來了,然后我們只需要到build.sh中去到相應的編譯命令即可。
打開build.sh文件:
一般可以在function help函數中對應項目的編譯命令。
這里我對應項目的編譯命令是:
其中,-j4里的4指的是線程數量,就是你想用幾個線程去編譯這個工程。一般是編譯主機CPU支持的并發線程總數的1倍或2倍(例如:在一個4核,每個核支持兩個線程的CPU上,可以使用make -j8或者make -j16)。
如果沒有編譯命令的Example,只要你對基本shell語法有所了解,也可以很快找到的。
綜上所述,我們就可以自己在Jenkins或Gerrit找到自己想要的代碼和編譯命令,在減少溝通成本的同時,也可以get到一些程序員的基本技能。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的从Jenkins或Gerrit上获取拉代码和编译命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从源码角度解析Android中APK安装
- 下一篇: 《18成长,19蜕变》