はじめに
基本のrubocop設定を自分用の備忘録として記述します。
Rubocopとは
RuboCop とは、Ruby のコードがコーディング規約に沿っているかを検査することができる「静的コード解析ツール」の一つです。
RuboCop をアプリケーションに取り入れることで、コードの品質を保つことができます。
Rubocop 基本設定
.rubocop.yml
AllCops:
  # チェック対象から除外するディレクトリ,ファイル
  Exclude:
    - "vendor/**/*"
    - "db/**/*"
    - "bin/*"
    - "node_modules/**/*"
    - "config/initializers/devise.rb"
    - "config/environments/*.rb"
    - "Gemfile"
    - "Rakefile"
# # frozen_string_literal: true というマジックコメントのないファイルの許可
Style/FrozenStringLiteralComment:
  Enabled: false
# コンパクト記法とネスト記法の両方を許可
Style/ClassAndModuleChildren:
  Enabled: false
# ドキュメントの無い public class を許可
Style/Documentation:
  Enabled: false
# config/routes.rb をブロック行数のチェックから除外
Metrics/BlockLength:
  Exclude:
    - "config/routes.rb"
# メソッドの行数40行まで許容
Metrics/MethodLength:
  Max: 40
# メソッドの複雑度の指標を40まで許容
Metrics/AbcSize:
  Max: 40
参考
公式ドキュメント
https://docs.rubocop.org/rubocop/1.15/configuration.html