按源仓库内容呈现,保留标题、案例、代码、表格、链接以及原文引用的演示图片。
Rails Linting Guide
Run linting tools and fix issues before pushing code.
Workflow
1. Check What Changed
git diff --name-only HEAD~1
# or for unstaged changes
git diff --name-only2. Run Linters
Ruby files:
# Check only
bundle exec rubocop
# Auto-fix
bundle exec rubocop -AERB templates:
# Check only
bundle exec erblint --lint-all
# Auto-fix
bundle exec erblint --lint-all --autocorrectSecurity scan:
bin/brakeman --no-pager3. Handle Results
If auto-fix worked:
git add -A && git commit -m "style: linting"If manual fixes needed:
- Report specific issues with file:line references
- Suggest fixes for common patterns
4. Common Issues
| Issue | Fix |
|---|---|
| Line too long | Break into multiple lines |
| Missing frozenstringliteral | Add # frozen_string_literal: true at top |
| Trailing whitespace | Remove trailing spaces |
| Missing newline at EOF | Add blank line at end |
Output
## Linting Summary
### Ruby (rubocop)
- Files checked: X
- Offenses: X (Y auto-corrected)
- Remaining issues: [list with file:line]
### ERB (erblint)
- Files checked: X
- Issues: X (Y auto-corrected)
### Security (brakeman)
- Warnings: X
- Critical: [list if any]
### Status
[PASSED - ready to push / NEEDS ATTENTION - manual fixes required]
