Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Cap tasks to speed up cap deploys with git instead of symlinking (as described in http://github.com/blog/470-deployment-script-spring-cleaning)

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 lib
Octocat-spinner-32 spec
Octocat-spinner-32 .gitignore
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 LICENSE.txt
Octocat-spinner-32 README.rdoc
Octocat-spinner-32 fast_git_deploy.gemspec
README.rdoc

fast_git_deploy

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

Install it into your app:

Gemfile:

gem 'capistrano'
gem 'fast_git_deploy'

config/deploy.rb

require 'fast_git_deploy'

Switch an existing project:

cap deploy:warm

Setup a new project:

cap deploy:setup
cap deploy:cold
cap deploy
Something went wrong with that request. Please try again.