必须先禁用脚本安全性,参考文章:https://www.cnblogs.com/xiao987334176/p/18365397
点击Manage Jenkins-->Script Console
输入以下脚本:
// 定义Git命令
def cmd = "git ls-remote --heads https://oauth2:xxxxxx@xx.gitlab.com/xx.git"
// 执行命令并获取输出
def proc = cmd.execute()
proc.waitFor() // 等待命令执行完成
// 从执行结果中获取标准输出文本
def text = proc.text
//println text
// 将输出文本按行分割,并提取分支名
def branches = text.readLines().collect { line ->
//println line
def parts = line.tokenize("\t")
//println parts
def branch = parts.last().replaceAll("refs/heads/", "")
//println branch
}
// 输出分支列表
//println branches
// 如果需要转换为List数据结构,可以使用toList()方法
def branchList = branches.toList()
// 输出List
println branchList
注意:oauth2是固定的,后面的xxxx是授权的token
执行有输出分支,就表示成功了