fast_git_deploy is a series of cap tasks to speed up capistrano deploys by using git as the version source instead of checking out + symlinking on each release.
The process is used internally at github and is described in github.com/blog/470-deployment-script-spring-cleaning
Here’s some perf stats (taken from a while back on a very, very slow machine):
Before (with fast_remote_cache deploy strategy):
$ time cap staging deploy:update ... real 1m56.811s user 0m0.560s sys 0m0.118s
After:
$ time cap staging deploy:update ... real 0m19.987s user 0m0.538s sys 0m0.110s
Gemfile:
gem 'capistrano' gem 'fast_git_deploy'
config/deploy.rb
require 'fast_git_deploy'
cap deploy:warm
cap deploy:setup cap deploy:cold cap deploy