Skip to content

一、Jenkins 动态获取Git仓库参数插件使用手册

1.1 插件简介

​​Jenkins Git Parameter 插件​​(全称为 Git Parameter Plugin)是一款用于在 Jenkins 构建任务中​​动态获取 Git 仓库元数据​​的扩展插件。它允许用户在触发构建时,手动或自动选择 Git 仓库中的分支、标签、提交记录、目录结构等参数,替代传统固定分支/标签的构建方式。

  • 解耦构建任务与固定分支/标签,支持按需选择任意版本(如测试特定提交、发布特定标签)。
  • 结合 Jenkins 的参数化构建功能,实现“按版本触发”的灵活流水线。

1.2 插件安装

1.3 配置方式

1.3.1 自由风格项目

  • 安装Git Parameter 插件
  • 创建一个自由风格的JOB
  • 在流水线中配置Git Parameter参数,定义分支的变量名称为:GIT_BRANCH 描述参数类型为:分支默认分支名称: mian (⚠️新版本Jenkins中,叫:This project is parameterized),如下图所示

  • 在流水线中配置git 参数,定义仓库地址,git凭证,指定默认分支为变量${GIT_BRANCH}

  • 保存,开始构建

⚠️

配置后第一次选择“Build With Parameters”构建项目时,可能会获取不到分支信息。忽略该错误提示,继续执行构建,后续的构建就是正常的了

1.3.2 pipeline项目

  • 创建一个pipeline的JOB

pipeline语法指南

Git Parameter 插件语法生成

git checkout 片段生成

完整的pipeline代码如下:

groovy
pipeline {
    agent any
    parameters {
  gitParameter branch: '', branchFilter: '.*', defaultValue: 'main', description: '构建分支', name: 'GIT_BRANCH', quickFilterEnabled: false, selectedValue: 'NONE', sortMode: 'NONE', tagFilter: '*', type: 'GitParameterDefinition'
    }
    
    stages {
        stage('checkout'){
            steps{
                script{
                    checkout scmGit(branches: [[name: '$GIT_BRANCH']], extensions: [], userRemoteConfigs: [[credentialsId: 'a11aa99b-7bba-48fd-bd01-46b68732578a', url: 'http://code.srebro.cn/opforge/demo.git']])
                }
            }
        }
    }
}
  • 保存,开始构建

⚠️

配置后第一次选择“Build With Parameters”构建项目时, 会遇到报错:

  • The default value has been returned
  • No Git repository configured in SCM configuration or plugin is configured
  • wrong Please check the configuration

忽略该错误提示,选择一个默认的分支开始构建,后续的构建就是正常的了

最近更新

采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 运维小弟