前面章節咱們講解了Jenkins結合.net平臺工具以及一些第三方工具實現項目自動還原,自動編譯,自動測試和自動發佈.然而實現自動化還有一個關鍵的步驟就是監聽源碼倉庫變化而後從倉庫拉取最新代碼,而後再執行剛纔所說的步驟. git
下面就講一下Jenkins如何監聽git倉庫變化,若是有變化則拉取最新代碼進行編譯,測試和發佈. 工具
首先打開Jenkins,咱們新建一個名爲PollSCM的freestyle項目, 測試
咱們之前只用到了Build欄,這裏咱們要設置Souce Code Management欄 ui
默認的選項是None無任何源代碼管理工具,這裏要結合的是Git,所我以們選擇Git spa
選擇了git之後出現以上界面,其中Repository Url爲git倉庫的地址,咱們輸入自動項目倉庫的git地址. .net
下面是密碼咱們點擊Add,出現如下界面 3d
這裏咱們輸入用戶名,密碼這兩個是關鍵的,id和description能夠輸也能夠不輸,完成後點擊Add blog
這時候Credentials欄會出現一個下拉框 ip
咱們選擇剛纔添加的用戶名和密碼 文檔
下面是分支,因爲測試倉庫中只有一個master傳分支,做爲演示咱們就使用master分支.
而後往下拉到Builder Triggers欄
這一欄以前咱們使用過build periodically,這裏咱們選擇Poll SCM,就是不斷輪訓SCM的變化,若是有變化則拉取
咱們勾選Poll SCM後出現上面內容,咱們在Schedule裏輸入* * * * * 這裏的*並非密碼,每隔一分鐘查詢一次git變化,關於git定時任務格式配置能夠參看以往的文檔.
這裏咱們再也不演示拉取後如何構建,後面會有一個完整示例.
咱們點擊保存,修改本地代碼而後提交一次,過一分鐘後查看是否有構建產生.
咱們修改了示例代碼庫中tools文件夾下的readme文件而後提交來觸發一次構建
提交完之後咱們看到#2構建正在執行.
這裏你們可能會有疑問,git拉到的項目拉到了哪裏的呢.實際上是拉到了Jenkins安裝目錄下的workspace下的和項目同名的文件夾中(所謂項目同名就是和咱們在Jenkins管理界面建立的項目名)
咱們打開Jenkins目錄下的workspace/pollscm/tools下的readme文件(這個文件原來是空的)
能夠看到咱們剛纔提交的內容已經正確拉取了.