背景
公司其中一個項目采用分支上線模式,每次生產上線都需要修改 Jenkins 任務中的 Git 分支版本,改為參數傳遞 Git 分支。
實現
我們采用參數傳遞 Git 分支,另外也可使用Git Parameter
插件實現,會列出所有的 Git 分支。
-
在 Jenkins 任務中添加 String 類型參數:
GIT_BRANCH
。用於存儲 Git 分支名稱。 -
在 Pipeline 中配置 Git 分支參數變量:
${GIT_BRANCH}
。 -
就可以將 Git 分支名稱通過
GIT_BRANCH
參數傳遞進行構建。
執行后報錯:
stderr: fatal: Couldn't find remote ref refs/heads/${GIT_BRANCH}
解決辦法
取消 Pipeline 的lightweight checkout(輕量級檢出)
選項,就可以正常構建。
https://issues.jenkins.io/plugins/servlet/mobile#issue/JENKINS-28447