当前位置: 首页 > 面试题库 >

通过分支索引删除分支时,Jenkins删除作业

宋安晏
2023-03-14
问题内容

有没有办法告诉詹金斯(2.2)删除已删除分支的作业?目前,由于未删除作业,因此我的构建监视器填充了分支。是否有设置可以触发此行为,还是应该将其记录为错误?


问题答案:

由于您使用的是最新的Jenkins版本,请考虑将作业切换到多分支管道设置。

工作流多分支功能(由工作流插件提供)提供以下关键功能:

  • 在仓库中,每个新分支都会在Jenkins中自动创建工作流(作业)(假设Webhook已从GH注册到Jenkins)。

  • 特定于该子分支的构建及其唯一的scm更改和构建历史。

  • 根据设置,自动修剪/删除从存储库中删除的分支。

  • 如果需要,可以通过覆盖父属性来灵活地单独配置分支属性。

编辑
:检查管道的“丢弃旧项目”设置。如果您的“旧项目的最大数量”非零,那么,如果您的分支的构建数量较少,则此数字将永远不会被删除!您甚至可以在日志中看到:

Will not remove US12345 as it is only #1 in the list
Will not remove US23456 as it is only #2 in the list
Will not remove US34567 as it is only #3 in the list

编辑 :您还可以通过添加名为“修剪陈旧的远程跟踪分支”的其他行为来尝试自己的运气(“行为”->“添加”->从下拉列表中选择)。



 类似资料:
  • 假设我们在 “contact-form” 分支上的工作已经完成了。并且我们也已经把最终的改动整合到了 “master” 分支。现在我们就不再需要这个分支了。把它删除掉吧: $ git branch -d contact-form 为了保持一致,我们也有必要删除它所对应的远程分支。附加上一个 “-r” 参数就可以了: $ git branch -dr origin/contact-form

  • 既然issue1分支的内容已经顺利地合并到master分支了,现在可以将其删除了。 在branch命令指定-d选项执行,以删除分支。 $ git branch -d <branchname> 执行以下的命令以删除issue1分支。 $ git branch -d issue1 Deleted branch issue1 (was b2b23c4). issue1分支被删除了。您可以用branch命

  • 问题内容: 我们目前有一个使用的詹金斯管道。每个git分支都执行一个声纳分析,使用该属性创建一个声纳项目 。这是非常有用的,因为在合并每个分支之前都会对其进行分析,当一个分支与master合并并在GIT上消失时,该问题就会出现,该项目将继续在sonarqube上进行,并且需要手动删除。有没有办法自动做到这一点?或其他任何建议? 问题答案: 您可以定义以下方法来执行此工作,然后根据需要或在诸如合并/

  • 我们将尝试在github中创建一个工作流,其中每个票据都是master的分支 票据完成后,工作将合并到暂存中,在暂存中执行回归和集成测试,然后将其合并到主控中。 一个团队领导提出了合并后旧票分支的问题。 我发现了这个脚本,想知道它是否能在我们的环境中工作。我们只想删除已经合并到主目录中的分支。

  • 删除列出的分支的所有尝试(根据下面的答案)都会导致错误: 我使用的是: git 1.7.4.1 ubuntu 10.04 GNU bash,version 4.1.5(1)-release GNU grep 2.5.4

  • 我们目前在一个Jenkins实例(生产性实例)中处理多分支测试作业的bitket分支源插件遇到了一些问题: 在Jenkins中,任何与已删除分支相关的作业都不会被删除。is显示为禁用。 检查我发现以下条目: 我们有另一个实例(测试实例),其中一切都按预期工作-分支立即被删除,例如在日志中看到以下内容: 对于这两种情况,我们使用相同的Jenkins版本(2.212.2)和插件版本 这两种情况下的作业