2014年7月5日 星期六

Jenkins - svn commit時總是無法取到最新版本..

參考:Triggering build twice for each commit


    這問題困擾我蠻久的,就是每一次當我svn commit後呼叫post-commit 執行jenkins build的時候,『第一次』也就是由post-commit執行的那次jenkins build,總是無法取到最新的svn更新版本,一定要手動執行jenkins build才可以成功抓到svn最新版本。

    專案小的時候還無所謂,但隨者專案越來越大,且每一次build都還要執行unitTest的情況來說,每次的小修改,都要花上3~5分鐘(執行兩次build)才能build到最新版本開始測試,實在是很累。

   後來找到上述討論,似乎與time sync有關(不太明白為什麼),我用了討論串中最簡單的方式,也就是在jenkins build的組態中將svn url後面加上@HEAD的參數,解決了此問題。

   另一點奇怪的是,我有兩個專案,在一開始都沒這種問題,都是用到後面才開始出現.....