If you only need to update one or two files (usually when you have to do a minimal change) you can also use deploy:upload
// restart application (sometimes not even required (images, css, js)
Don't abuse this since it's very easy to end up with an inconsistent codebase if you forget a file!
SSH on speed.:
[$ cap production shell # cap> on web03.dmz.xxx.org,web04.dmz.xxx.org touch /tmp/hello_world # cap> on web03.dmz.xxx.org,web04.dmz.xxx.org !deploy:restart ** [out :: web04.dmz.xxx.org] stopping port 8100 ** [out :: web03.dmz.xxx.org] stopping port 8100 ** [out :: web04.dmz.xxx.org] stopping port 8101 [...] # # with role: # cap> with app chown -R xyz /var/lib/xxxx/current/tmp
If there is only 1 file and you know what you're doing, you can use capistrano to upload a file from your local checkout on dev01. Don't forget to get the latest version of the code with 'git pull'
git pull cap production deploy:upload FILES=app/controllers/donations_controller.rb