Jenkins 中轻量级签出和浅层克隆之间的区别

Man*_*ish 4 jenkins jenkins-plugins jenkins-job-builder

在Jenkins作业构建器的管道SCM配置中,我们有两个选项——轻量级签出和浅层克隆。这些选项之间有什么区别以及我们何时使用每个选项?

Noa*_*mer 7

从文档中:

浅克隆
执行浅克隆,这样 git 就不会下载项目的历史记录,当您只想访问存储库的最新版本时,可以节省时间和磁盘空间。

轻量级结帐
如果选择,则尝试直接从 SCM 获取 Pipeline 脚本内容,而不执行完整检出。这种模式的优点是效率高;但是,您不会获得任何基于 SCM 的变更日志或轮询。(如果您在构建期间使用 checkout scm,这将填充变更日志并初始化轮询。)此外,在此模式下,构建参数不会替换为 SCM 配置。只有选定的 SCM 插件支持此模式。

总结:

  • 浅克隆是 Git 功能,可让您仅拉取最新提交,而不是整个存储库历史记录。因此,如果您的项目有多年的历史,或者有数千次提交的历史,您可以选择特定的深度来拉取。
  • 轻量级签出是 Jenkins 的一项功能,可以从存储库中提取特定文件,而不是整个存储库。因此,例如,当从存储库获取Jenkinsfile时,它​​很有用,因为您只需要特定的文件,而不关心其他 SCM 信息。