2

我想ClassLength在 Rubocop 上启用规则,但仅适用于新类,这样我们就不会开始收到所有遗留代码的警报。有可能吗?

4

1 回答 1

2

如果您可以将它们隔离到目录中,您可以忽略 中的旧文件,可以是一个长列表,也可以是几个glob .rubocop.yml

Metrics/ClassLength:
  Exclude:
    - 'one/file'
    - 'another/file'
    - 'some/dir/*'

如果只有几个非常糟糕的违规者,但其余的都超过了默认值(100 行),您可以选择更高的阈值

Metrics/ClassLength:
  max: 200

您还可以在要忽略的每个文件中添加注释以禁用警察Metrics/ClassLength

# rubocop:disable Metrics/ClassLength
class SuperLongScaryThing
  # ...
end
# rubocop:enable Metrics/ClassLength

当然,您总是可以进行一些重构!

于 2015-11-30T04:08:02.923 回答