What is your version control and deployment workflow with Rails?
deployment, ruby, ruby-on-rails, version-control, workflow
Solution
- Create a copy of my personal Rails 2.1.1 template with preinstalled plugins and frozen gems.
- Change DB passwords, session secret/name and `deploy.rb`.
- Create a private or public repository on GitHub as needed.
- Push the empty rails project to GitHub.
- SSH to Server and configure apache (copy Virtual Host file and mongrel config files from old project)
- Create empty database on MySQL server
- `cap deploy:setup && cap deploy:cold`
If everything works so far: Start developing and committing to GitHub. `cap deploy` as needed.
Update: Don't forget to write tests for everything you do!
Problem
Especially when considering a fresh Rails project, what does your version control and deployment workflow look like? What tools do you use? I'm interested in answers for Mac, *nix and Windows work machines. Assume a *nix server. I'll edit for clarity if need be.