看到這里,你一定想要嘗試一下持續集成了。但是從哪里開始呢?我在上面描述了一整套的實踐,這些可以讓你體驗到所有的好處。但你也不必一開始就照單全收,你有自己的選擇余地,基本上取決于你的環境和團隊的特性。我們也從過去的實踐中吸取了一些經驗和教訓,做好下面這些事會對于你的持續集成運作有重要的意義。
最早的幾步之一是實現 build 自動化。把所有需要的東西都放進版本控制系統里,這樣你就可以用一條命令 build 整個系統。這對許多項目而言不是什么小任務,這對于其他東西正常工作非常重要。剛開始你可能只是偶爾需要的時候做一個 build,或者只是做一個自動的 nightly build。當你還沒有開始持續集成時,自動 nightly build 也是一個不錯的開始。
其次是引入一些自動化測試到你的 build 中。試著指出主要出錯的地方,并要讓自動化測試暴露這些錯誤。建立又快又好的測試集合會比較困難,特別在已存在的項目中,建立測試需要時間。你必須找個地方開始動手,就像俗話說的,羅馬不是一天建成的。
還要試著加快提交 build 的速度。雖然需要幾個小時 build 的持續集成也比什么都沒有好,但能做到傳說中的10分鐘會更好。這通常要對你的代碼動一些大手術,以剝離對運行緩慢那部分的依賴。
如果你剛剛開始一個新項目,從一開始就用持續集成。對build時間保持關注,當慢于10分鐘時就立即采取行動。通過快速行動,你可以在代碼變得太大之前做一些必要的架構調整。
比所有事情都重要的是尋找幫助。找一個以前做過持續集成的人來幫你。像所有新技巧一樣,當你不知道最終結果怎樣的時候會非常難以實施。請一個導師(mentor)可能會花些錢,但如果你不做,你會付出時間和生產效率損失的代價。(免責聲明/廣告:是的,我們 ThoughtWorks 在這個領域提供咨詢服務。不管怎樣,我們曾經犯過你可能會犯的大多數錯誤。)