RuboCop - 为我的整个 Rails 项目禁用 Style/AndOr?

RuboCop - Disabling Style/AndOr for my entire Rails project?

我正在研究 Rubocop,我使用的一些约定优于标准的 Rubocop 遵循。考虑以下因素:

if some_variable and another
  do_this
end

Rubocop 抱怨我应该在这里使用 && 而不是 and。我检查了文档,Style/AndOr 的默认设置是 always。但是,它确实具有允许我执行此操作的设置 (conditionals):

model.save! and return

...但我宁愿为我的 Rails 项目完全关闭此标准。 Rubocop 确实让我像这样按实例执行此操作:

# rubocop:disable Style/AndOr
if check_this and check_that
  # rubocop:enable Style/AndOr

  do_something
end

...但这看起来真的很乏味,所以如果我可以完全禁用 Style/AndOr,我会更喜欢它。这可能吗?如果可以,我该怎么做?

创建一个名为 .rubocop.yml 的点文件(注意点):

Style/AndOr:
  Enabled: false

在此处查看更多信息:
https://github.com/rubocop-hq/rubocop/blob/master/manual/configuration.md

使用上面@Casper 接受的答案,您可以禁用任何您想要的 Rubocop 风格指南,但我也会加入横向思维选项,即使用 Rubocop 逐渐过渡现有代码中的风格。请注意,&& / || 是默认值的原因是因为它们的优先级高于 =which makes most code more intuitive;从某种意义上说,您可能会认为这是一种代码味道,促使您更改样式指南。

如果您有兴趣迁移样式,consider setting up your CI to lint only touched files;这样,您就可以避免完整代码库 lint 的麻烦,而只需对您接触过的文件进行检查即可。然后,您可以使用 Rubocop 的自动更正来快速修复大多数问题:bundle exec rake rubocop -a.