我正在尝试使用Jenkinsfile创建Jenkins工作流。我要做的就是监视’develop’分支中的更改。发生更改时,我希望它进行git标签并合并到master。我正在使用GitSCM步骤,但它似乎唯一支持的就是git clone。我不想掏出钱来做标记/合并,但我看不到解决办法。有人知道这是否可能吗?我在我的Git服务器上使用BitBucket(本地)。
目前尚不可能,因为GitPublisher该插件(以前负责标记/合并/推动自由式作业的插件)尚未更新为与Jenkins管道兼容。您可以在管道插件兼容性页面和专用的GitPublisher Jira问题上关注该问题。
GitPublisher
因此,看来您唯一的选择是实际上掏出您的tag / merge命令。但是,请注意,您仍然可以从一些Jenkins内置功能中受益,例如在您的Git存储库中使用凭据。然后根据您的需求进行标记/合并非常简单。
退房示例:
git url: "ssh://jenkins@your-git-repo:12345/your-git-project.git", credentialsId: 'jenkins_ssh_key', branch: develop
然后,标记/合并/推送将非常简单:
sh 'git tag -a tagName -m "Your tag comment"' sh 'git merge develop' sh 'git commit -am "Merged develop branch to master' sh "git push origin master"
我希望有一天GitPublisher可以在管道兼容的版本中发布,但是目前这种解决方法应该可以。