首页 > 解决方案 > 如何仅使用 Renovate 为匹配的依赖项创建 PR

问题描述

我只想为以下指定的依赖项创建一个拉取请求。不应考虑所有其他依赖项。下面的配置没有这样做,因为我为所有与我指定的规则不匹配的依赖项获得了单独的 PR。例如,我获得了 SimpleInjector 的 PR。如果不为每个依赖项创建明确的排除规则,我怎样才能只为匹配的依赖项获得一个 PR,而根本没有其他 PR?

  "packageRules": [
    {
      "matchPackagePatterns": [
        "System.*",
      ],
      "excludePackageNames": ["Microsoft.CodeAnalysis.FxCopAnalyzers"],
      "matchUpdateTypes": [
        "minor",
        "patch"
      ],
      "groupName": "non major",
      "groupSlug": "non-major"
    }
  ]
}

标签: renovate

解决方案


有两件事是解决这个问题的关键:

  • 规则从上到下进行评估
  • 默认情况下,所有依赖项都会更新

下面的配置首先禁用所有依赖项,然后有选择地再次启用一些依赖项:

"packageRules": [
    {
      "matchPackagePatterns": ["*"],
      "enabled": false
    },
    {
      "matchPackagePatterns": [
        "System.*",
      ],
      "enabled": true
    },
    {
      "matchUpdateTypes": [
        "minor",
        "patch"
      ],
      "groupSlug": "non-major"
    }
  ]

推荐阅读