Rubocop とは
RubocopはRuby(Rails)で書かれたコードがコーディング規約に遵守されているか
チェックしてくれる静的コード解析ツール
RuboCop Airbnb とは
airbnbの開発で使用されたRubocopの設定
導入
Gemfileのdevelopmentグループに以下のgemを追加してください。
Gemfile
group :development do
gem 'rubocop-airbnb'
ターミナルでbundle installを実行してください。
設定
アプリケーションフォルダの直下に.rubocop.ymlと.rubocop_airbnb.ymlファイルを作成してください。
.rubocop.yml
inherit_from:
- .rubocop_airbnb.yml
#ここにはrubocopで検証したくないファイルやフォルダを指定
AllCops:
Exclude:
- 'db/**/*'
- 'bin/*'
- 'config/environments/*'
- 'config/application.rb'
- 'config/initializers/*'
- 'config/spring.rb'
- 'lib/tasks/*'
- 'vendor/**/*'
.rubocop_airbnb.yml
require:
- rubocop-airbnb
実行
ターミナルで以下のコマンドを実行
bundle exec rubocop --require rubocop-airbnb
自動修正
実行コマンドに -a/--auto-correct のオプションをつけると違反箇所を自動修正してくれる。
bundle exec rubocop --require rubocop-airbnb -a
※ 全ての違反箇所を修正してくれる訳ではないです。
自動修正が安全でない場合、対象から除外されます。
For some offenses, it is not possible to implement automatic correction.
If a cop or its auto-correct is annotated as "not safe", it will be omitted when using .