簡體   English   中英

詹金斯和多個git分支?

[英]Jenkins and multiple git branches?

我正在從事Jenkins工作,我需要它在同一個存儲庫中構建兩個分支。 我怎樣才能做到這一點?

考慮到Jenkins無法在兩個版本的存儲庫上執行一個作業(這將獲得兩個不同分支的內容),我建議創建兩個不同的作業,每個分支一個(使用Jenkins Git插件 )。

這個插件將為您構建每個分支: https//wiki.jenkins-ci.org/display/JENKINS/Multi-Branch+Project+Plugin

您也可以使用GitLab( https://wiki.jenkins-ci.org/display/JENKINS/GitLab+Plugin )/ GitHub( https://wiki.jenkins-ci.org/display/JENKINS/GitHub+Plugin )插件,可以在提交代碼時觸發構建,然后構建被調用的分支。

您是否想要在同一個簽出的工作區目錄中構建兩個分支?

如果在同一個工作空間目錄中,您需要做的就是創建一個腳本,該腳本將檢出一個分支,構建它,完成后,檢查下一個分支然后構建它。

然后,這個單個腳本將成為單個Jenkins作業調用的腳本。

例如,您的構建腳本看起來像這樣:

git clone url:repo.git workspace
cd workspace 
git checkout branchA
make
# now you're done building branchA
# next checkout branchB and run make
git checkout branchB
make
# now you are done building branchB

每個結帳將安裝所需分支的文件。 這將相應地構建它。 但是,由於它們將共享相同的工作空間目錄,這可能意味着第一個構建將生成新文件,然后在第二個構建運行時將出現這些文件。 我認為這是你想要的效果,因為你想在同一個工作區目錄中構建兩個分支。

更新:如果要為下一個版本提供新的工作區,請使用git clean -xdf。

如果你想要上面的並且想要Jenkins構建任何新分支的高級功能,並且只有在構建成功的情況下才合並它(即你想要兩個主分支和兩個構建),你可能想要考慮只是分配存儲庫和合並存儲庫之間的變化(git是為那種東西而構建的,雖然我還沒有完全達到這個用途)。

所以你基本上有2個git存儲庫和兩個jenkins構建,你可以配置git插件從每個存儲庫中的任何分支構建並合並到該存儲庫的master。 因此,每個存儲庫在此配置中的作用類似於分支。

這是我們的計划,當我們從1.x版本系列開始新版本2.x時,無論如何都是fork。 我們將看到它在實踐中的運作方式。

后來,迪恩

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM