jenkins pipline脚本 获取git分支

必须先禁用脚本安全性,参考文章:https://www.cnblogs.com/xiao987334176/p/18365397

 

点击Manage Jenkins-->Script Console

输入以下脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// 定义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

 

执行有输出分支,就表示成功了

 

posted @   肖祥  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示