You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins多分支Tags视图如何仅显示最新10个标签?

Jenkins多分支项目限制标签显示数量的解决方案

你的问题核心在于:默认的orphanedItemStrategy只负责清理分支类的孤儿项目,标签的过滤和清理需要在Git分支源的标签发现特性中单独配置,两者逻辑是分开的。

要实现只保留最新10个标签,需要在DSL脚本的branchSources -> git -> traits中添加标签过滤特性,具体代码示例如下:

multibranchPipelineJob('你的多分支项目名称') {
  branchSources {
    git {
      remote('你的Git仓库地址')
      traits {
        // 启用标签发现(你已配置的部分)
        tagDiscovery()
        // 仅保留最新的10个标签
        filterByNumberOfTags {
          numToKeep(10)
        }
        // 如果需要按时间过滤,可替换为以下配置(保留7天内的标签)
        // filterByTagAge {
        //   daysToKeep(7)
        // }
      }
    }
  }
  // 原有分支清理策略可继续保留(针对分支生效)
  orphanedItemStrategy {
    defaultOrphanedItemStrategy {
      pruneDeadBranches(true)
      daysToKeepStr("7")
      numToKeepStr("10")
    }
  }
}

关键说明:

  • filterByNumberOfTags 特性专门用于限制保留的标签数量,Jenkins会自动清理超过设定数量的旧标签,确保Tags视图只显示最新的10个。
  • 如果你是通过界面配置,对应操作是在多分支项目的「Git源配置」中点击「Add trait」,选择「Filter by number of tags」后设置保留数量。

内容的提问来源于stack exchange,提问作者maress

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 04:31:03