rubocop導入の際のgemの書き方
rubocop導入の際のgemの書き方についてわかったことを書いておきます!
参考サイト( https://qiita.com/terufumi1122/items/ad55bf8713c0df053f58 )で、
バージョン0.72以降のgemは
rubocop:生Rubyに関わる構文規則チェック
rubocop-rails:Railsに関わる構文規則チェック
のように細分化が行われていると書かれていたので、rubocop導入の際はバージョンを確認しつつ、gemfileに
gem 'rubocop', require:false gem 'rubocop-rails', require:false
と入れておけばいいという理解をしました!
※require:false
に関して
これをつけるとbundlerによってRailsアプリ側に自動で読み込みされないようになるということらしいです。
Bundlerに普通に書くと、Gemfileに書いたgemを、自動でまとめてrequireするような仕組みとなっているけど、rubocopやRSpecのようにテスト専用のGemの場合、実運用のときにrequireしても無駄にしかならないので、require: false
として、開発者がターミナル等で必要に応じて手動で使用するようにするみたいです。
手順としては、gemfileに記載
→bundle install --path vendor/bundle
→bundle exec rubocop
で使用ができます。
また、rubocop.yml
上で規定の変更の設定ができます。