我想在 Rubocop 上启用 ClassLength
规则,但仅限于新类,这样我们就不会开始收到所有旧代码的警报。可以吗?
最佳答案
您可以ignore your legacy files在 .rubocop.yml
中,可以是一个长列表,也可以是几个 glob(如果您可以将它们隔离到目录中)。
Metrics/ClassLength:
Exclude:
- 'one/file'
- 'another/file'
- 'some/dir/*'
如果只有几个非常严重的违规者,但其余的都超过了默认值(100 行),您可以 pick a higher threshold .
Metrics/ClassLength:
max: 200
您还可以添加annotations to disable cops在您想要忽略的每个文件中 Metrics/ClassLength
:
# rubocop:disable Metrics/ClassLength
class SuperLongScaryThing
# ...
end
# rubocop:enable Metrics/ClassLength
当然,您始终可以进行一些重构!
关于rubocop - 是否可以在 Rubocop 中仅为新类别启用规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33000487/