Multiple Stages Without Multistage

Note: This way only really works if you have minimal differences in tasks between stages, if you have extensive staging differences, please consider the advice on deploying to multiple stages.

Enter this in to your config/deploy.rb taking note that the role definitions are inside the task block:

set :application, 'example-website'
task :production do
  role :web, "www.capify.org"
  set :deploy_to, "/u/apps/#{application}-production/"
  set :deploy_via, :remote_cache
  after('deploy:symlink', 'cache:clear')
end
task :staging do
  role :web, "localhost"
  set :deploy_to, "/Users/capistrano/Sites/#{application}-staging/"
  set :deploy_via, :copy
  after('deploy:symlink', 'cruise_control:build')
end

With that in mind, to deploy you can try something like:

$ cap staging deploy
$ cap staging deploy:restart