使用jenkins groovy“ checkout”命令从git检出特定文件夹

我对jenkins和groovy并不陌生,我正在尝试在我的jenkins文件中进行稀疏签出。目前,我只是这样做:

stage('Check out branch from Gitlab'){ 
    echo 'Pulling...' + env.BRANCH_NAME
    checkout scm
}

我希望从Jenkins Groovy脚本中执行稀疏签出,而我正在努力寻找一种实现此目的的好方法。有没有一种使用“签出”命令执行此操作的方法?

tianyou258 回答:使用jenkins groovy“ checkout”命令从git检出特定文件夹

您应为GitSCM more info here

配置一组参数

下面以一个基本配置为例:

pipeline { 
    agent any
    stages {     
        stage ("Git Checkout"){ 
            steps {
            script {
                    checkout([
                        $class: 'GitSCM',branches: [[name: "devel"]],doGenerateSubmoduleConfigurations: false,extensions: [[
                            $class: 'RelativeTargetDirectory',relativeTargetDir: "/tmp/jenkins/devel"
                        ]],submoduleCfg: [],userRemoteConfigs: [[
                            credentialsId: 'jenkinsCredentialsId',url: 'https://git.example.com/git/example'
                        ]]
                    ])

                }
            }
        } 
    }
}

我附加了一个完整的Jenkins管道,其中包括一个阶段。它检出目录devel上存储库https://git.example.com/git/example的分支/tmp/jenkins/devel。还请注意,您应该在Jenkins凭据(/ jenkins / credentials /)中添加(如果尚未完成)存储库的凭据,在上面的示例中,其ID为jenkinsCredentialsId

您可以阅读GitSCM的链接,以了解可以配置的更多详细信息和属性。

本文链接:https://www.f2er.com/3167062.html

大家都在问