我們的團隊使用jenkins和git。我們希望實現git插件的高級功能,允許在將提交提交給有福的存儲庫之前進行預生成。請參閱https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin#GitPlugin-AdvancedFeaturesgit jenkins高級功能
但是,我無法理解整個過程。
下面是摘錄:
設置您的詹金斯的項目,並在Git的SCM空白離開「分支」字段。這將導致詹金斯考慮任何建築物的任何變化。
接下來,在'高級'部分中選擇一個特定分支名稱作爲集成目標 - (例如'master'或'stable'),然後選擇'合併之前合併'。
從後期構建操作中選擇'將GIT標籤推回原始存儲庫'(這是使用構建結果更新集中式git回購所需的)。
現在,開發人員不應直接向您的集成分支(「主」或「穩定」)提交。相反,他們應該使用功能分支,或者在提交時創建新的遠程分支(例如:「git push origin HEAD:refs/heads/myNewFeature」)。您也可以將您的GIT存儲庫設置爲僅接受來自Jenkins的集成分支的提交。
你完成了。現在,提交應該自動與集成分支合併(如果它們沒有乾淨地合併,它們將會失敗)和構建。如果構建成功,合併的結果將被推回到遠程git存儲庫。
我的理解是,
- 開發人員創建遠程分支,從詹金斯將拉動從
- 詹金斯將合併的分支,其集成分支,並建立
- 如果生成成功,合併將推到祝福回購/主。
問題是,如果構建失敗,集成分支的狀態如何?我只會假設它以某種方式恢復到合併之前的提交。如果不是,那麼集成分支將保留打破構建的合併,使得其他分支不可能被合併和構建。
這是真的嗎?不幸的是,它從維基中不明確。
另外,有誰知道我可以看一個例子嗎?
我在這裏有一個類似的問題,即[如何使用詹金斯預構建分支合併僅用於分支我實際上要合併](http://stackoverflow.com/questions/22732145/how-to-use-jenkins -pre-build-branch-merge-only-for-branches-i-want-to-merge)而不是所有的 – nh2
檢查這篇文章:http://www.yegor256。COM/2014/07/24/rultor自動化-merging.html – yegor256