必須先禁用指令碼安全性,參考文章: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
執行有輸出分支,就表示成功了