2012-03-12 55 views
1

我有一個本地git存儲庫,並且還有一個工作的jenkins項目。關於配置jenkins在git推送提交之前運行測試的教程

我想勾詹金斯任務,使推任何更改到遠程回購前的詹金斯項目得到執行,如果測試不的成功混帳停止推

我想這應該是一個很常見的情況,但我一直在搜索谷歌,我找不到教程解釋

+0

這是迄今爲止我發現的最接近的:http://wiki.hudson-ci.org/display/HUDSON/Git+Plugin#GitPlugin-AdvancedFeatures – opensas 2012-03-12 14:49:34

回答

1

您可以推送到存儲庫Jenkins監視變化。作爲最後一個構建步驟(即在所有其他操作成功後),您可以將更改推送到實際的遠程存儲庫。

+0

非常好的主意! – opensas 2012-03-12 18:51:23

2

我認爲你沒有在野外看到這種情況下出來的原因是,它聽起來就像你試圖通過使用單獨回購,而不是單獨的分支來解決一個乾淨的代碼/骯髒的代碼分離,這是常態。也許相反,你有一個Jenkins正在監聽的單個遠端,也許正在監聽(說)'dev'分支。您從本地推送到遠程開發分支。詹金斯傾聽,在看到變化時建立起來,如果它喜歡它看到的東西,則將它合併爲「主」。

然後,您的髒代碼位於dev分支上,與主分支上的乾淨代碼分開。

這是解決此類問題的更常規方法..您可能會發現對此模型的更多支持。

+0

謝謝,實際上我想知道什麼是最好的方式來實現它... – opensas 2012-03-12 18:52:03

+1

對不起,完成推動到不同的*回購*作爲您的問題要求,或不同的分支機構?如果是後者,請查看:http://twasink.net/2011/09/20/git-feature-branches-and-jenkins-or-how-i-learned-to-stop-worrying-about-broken -builds /。這只是一種可能性,但應該給出正確的想法 – 2012-03-12 18:53:36

2

這實際上是一個很常見的情況,但這並不意味着這將很容易完成。

要做的最好的事情,作爲一個起點,閱讀Jenkins official documentation

從那裏,你可以閱讀特定的文章,如this one,談論一個鉤子,做一些你想要的事情。