Jenkins-如何在Pipeline脚本中检出当前分支?

时间:2019-02-18 19:52:40

标签: git jenkins

我目前有一个从GitHub触发的Jenkins职位。

如何使用Jenkins Pipelines检出触发Jenkins作业的分支?

我一直在尝试使用类似的东西:

checkout([$class: 'GitSCM', 
branches: [[name: env.BRANCH_NAME]], 
doGenerateSubmoduleConfigurations: 
false, extensions: [[$class: 'RelativeTargetDirectory', 
relativeTargetDir: 'mytargetdirectory']], userRemoteConfigs: [[credentialsId: 'id-123', 
url: 'https://github.com/my/repourl']]])

在上面的示例中,env.BRANCH_NAME被评估为空。

但是,我不确定branches中的值应该是什么来检出触发作业的分支。

来自GitHub的有效负载包含:

  "ref": "refs/heads/branchname",

是否有一种方法可以从有效负载中提取此信息以获得分支名称?

对此将提供任何帮助!

1 个答案:

答案 0 :(得分:0)

尝试使用GIT_BRANCH而不是BRANCH_NAME