.gitignore for Ruby

Ruby gems, Bundler artifacts, and compiled C extensions.

Quick presets

Selected (1)
Ruby
Your selections never leave your browser. Generation happens entirely client-side.
Raw

19 patterns · 363 B

# Generated by DevZone Tools — https://devzone.tools/tools/gitignore-generator
# Templates: Ruby
# 2026-04-20

# ---- Ruby ----
# Ruby
*.gem
*.rbc
/.config
/coverage/
/InstalledFiles
/pkg/
/spec/reports/
/spec/examples.txt
/test/tmp/
/test/version_tmp/
/tmp/
.dat*
.repl_history
build/bundled_gems
Gemfile.lock
.ruby-version
.ruby-gemset
.rvmrc
.byebug_history

What this template ignores

Ignores compiled .gem packages, RBC bytecode, Bundler-installed gems, test coverage reports, and RVM/rbenv version files.

Common additions

  • +.env — Rails credentials fallback
  • +config/database.yml — if it contains credentials

Commonly paired with

Frequently asked questions

Do I need to commit .gitignore?
Yes — .gitignore should be committed to the repository so all collaborators benefit from the same ignore rules.
How do I add custom patterns?
Open your .gitignore file and add the pattern on a new line. Use # for comments, * for wildcards, / to match directories, and ! to un-ignore a previously ignored path.
How do I ignore a file that is already tracked?
Adding a file to .gitignore does not remove it from tracking if it was previously committed. Run: git rm --cached <file> to stop tracking it without deleting the file locally.
Should I commit Gemfile.lock?
For applications: yes, always. For gems: no — Gemfile.lock pins versions for the gem authors environment but consumers need flexibility.

Looking for something else? Browse all templates →