在 Jenkins 管道结帐中禁用更改日志

sup*_*ali 5 git jenkins jenkins-pipeline

我有一个 Jenkins 管道,可以检查来自几个不同存储库的特定提交。我想禁用changeSet(changelog) 的计算,因为对作业的 /api/json 调用需要很长时间来计算(并且变更日志在任何情况下对于该作业都不重要)。

在管道中,我正在检查代码:

checkout([$class: 'GitSCM',
branches: [[name: commitHash]],
doGenerateSubmoduleConfigurations: false,
submoduleCfg: [],
changelog: false,
poll: false,
userRemoteConfigs: [[url: gitUrl]]])
Run Code Online (Sandbox Code Playgroud)

我认为设置changelog为 false 可以防止这种情况发生,但是当我调用/api/json该作业的页面时,我仍然可以看到changeSet填充的内容。

我缺少什么?

更新

需要明确的是,我看到的该作业的更改日志与我在管道中使用上面的代码检查的所有作业相关。我不介意拥有从中签出 Jenkinsfile 的 git 存储库的变更日志,但我不想包含作为管道阶段的一部分签出的所有项目的变更日志。

lightweight checkout管道配置中的模式与它有什么关系吗?

jul*_*con 0

您可以禁用更改日志。这已经在这里得到了回答: Jenkins pipeline: How to checkout repository without而是触发轮询或跟踪更改?

您还可以直接从 sh 块使用 git 命令。