在多人協同開發的環境之中,擁有一套持續整合伺服器(CI Server)也是很重要的,我也在去年的鐵人賽寫過一系列如何使用Jenkins打造.Net CI Server的文章。透過CI Server,可以確保在版本控制系統中的程式碼是可靠的,我們會在CI Server上設定建置、單元測試等工作,並且每天觸發執行,讓版本控制系統中的程式碼在一個乾淨而且獨立的環境中進行這些工作,如果執行失敗則會發出通知,讓開發人員可以即時處理,這麼一來不正確的程式碼不會存在版本控制系統中,也就不用害怕會有程式無法使用的情況發生了!今天我將向大家介紹如何使用Team Foundation Service(TFS)來執行專案的每日建置。
※在TFS上建立專案
TFS目前開放免費使用,未來在5人以下也可以免費使用,關於費用的細節大家可以參考官方網站,我們可以直接透過Windows Live帳號來開啟服務。
進入TFS個人主頁,選擇新增專案(版本控制使用git)
輸入專案資訊並建立專案
等候一下之後建立成功,進入專案首頁
點選Code標籤,準備將我們得程式碼簽入版本控制系統中
設定GIT權限,點選右上角的My Profile
選擇CREDENTIALS, 並選擇Enable alternate credentials,設定好帳號密碼並存檔
在專案資料夾打開command line使用以下指令將專案push到TFS上 (原本需已有Git)
git remote add origin https://xxx.visualstudio.com/DefaultCollection/_git/ApiSample
git push -u origin --all
上傳成功後,可以在TFS看到專案的程式碼
※新增每日建置工作
接下來我們要在TFS上進行每日建置工作,設定每日建置來確保程式碼的健康
※本日小結
經過了簡單的幾個步驟,我們讓我們的程式碼每天都會進行建置和單元測試,這就有如一套防火牆來確保我們的程式碼並沒有因為新的修改而造成任何損壞,這麼一來大家就不需要擔心會有人簽入了無法建置的程式碼,或是改壞原本正常的程式碼了!透過CI Server的整合,更甚至可以在每次push的時候就進行建置,這樣更能夠快速的反應新簽入的東西是否有異常,未來有機會的話會再跟大家分享TFS好用的功能,關於今天的內容,歡迎大家一起討論 ^_^
使用TFS進行每日自動建置?
怕會有風險
要是Source Code有Bug
自動建置失敗的話, 網站或應用程式會掛掉吧?
自動建置不等於自動Deploy喔!
自動建置的目的是確保版本控制系統中的程式碼是可以建置和通過單元測試,
如果程式有Bug不能建置,或是新簽入的程式碼不能通過單元測試,
隔天就會看到建置報告上是失敗的,
這麼一來就可以馬上發現版本控制系統中的程式碼有問題,
並且馬上進行修復,算是一種預防性的機制,
也不會有那種要重新建環境時,才發現版本控制系統中的程式碼早就是無法建置的情況發生!