Database per branch so you can easily switch between database models.
Works with Rails 4.x and 5.x
bin/rails db:branch
Will create a new database and load it with seed. It will create .branchinator
with db name for each env.
bin/rails db:unbranch
Will remove the database and .branchinator
bin/rails db:branch:reset
Shortcut for branch remove + create.
Put it into:
group :development, :test do
gem 'branchinator'
end
In you database.yml
put:
development:
<<: *default
database: <%= Branchinator.database %>
test:
<<: *default
database: <%= Branchinator.database %>
Update your .gitingore
as well:
echo .branchinator >> .gitignore
By default database name is taken from application name and looks something like:
awesomeproject_branch_environment
If you want you can change the first part and the separator.
In your database.yml
put:
branchinator:
prefix: awesome-project
separator: _