使用Jenkins的浅git子模块签出

kph*_*kph 1 git-submodules jenkins jenkins-pipeline

我没有问题使用git命令执行此操作,如将Git子模块设置为浅克隆和稀疏签出一样?但是我有一个使用Jenkins的项目,并且正在Groovy Pipeline语法中使用checkout()函数。我找不到任何将--depth选项传递给git子模块更新命令的选项。

Bec*_*ard 6

您应该能够在结帐步骤中使用extensions参数:

checkout([
  $class: 'GitSCM', 
  branches: [[name: 'master']], 
  doGenerateSubmoduleConfigurations: false, 
  extensions: [[$class: 'CloneOption', depth: 0, noTags: false, reference: '', shallow: true]],
  submoduleCfg: [], 
  userRemoteConfigs: [[url: 'git@yourrepo.com:repo/repo.git']]])
Run Code Online (Sandbox Code Playgroud)

如果您正在使用代码段生成器,请选择Additional Behaviors -> Advanced clone behaviors以查看其他选项。希望有帮助!