xaviershay/enki — pull request #74 by mcary (2013-04-15 02:59:23+00:00)
Title: Track db/schema.rb in version control

Rails best practice is to track db/schema.rb in version control, but
Enki does not track it. Generally, version control best practices
dictate that generated files are not tracked, and db/schema.rb is
a generated file in some sense. But the default Rails .gitignore does
not exclude it because:

Migrations, mighty as they may be, are not the authoritative source
for your database schema. That role falls to either db/schema.rb or
an SQL file which Active Record generates...
http://guides.rubyonrails.org/migrations.html#what-are-schema-files-for

Remove db/schema.rb from .gitignore and add it to Git version control.
This version of db/schema.rb was generated by running the current set of
migrations (which also regenerates db/schema.rb).

---

Xavier,

It seems that Enki does not track db/schema.rb. My impression is that the Rails 3 best practice is to track it. If you prefer not to, I'm curious to learn why. I don't have a very strong preference for what Enki core does, but here's a pull request in case you see fit to track it.

I noticed the absence of schema.rb in the process of creating a feature branch that makes a schema change. I'm accustomed to seeing the change to schema.rb in the diff. I'd like to figure out whether that feature branch should contain changes to schema.rb before I publish it.

Marcel