1 2 3 4 5 | set :scm , :git # of course set :deploy_via , :export set :project , [insert-your-repo-subdir-here] |
Which will cause capistrano to execute something along the lines of
1 2 3 4 | git archive -- format = tar --remote=[your-repo-path] \ master:[your-subdir-path] |
to deploy your application, cool huh? The catch, well, not all repositories (notably github) support the archive command via the git protocol, but if you're hosting your own repository or connecting by ssh, this will work just fine.
7 comments:
Fantastic! It works!
For new readers: The patch have been accepted in capistrano ticket 65.
Jarl
The patch has not been accepted! The ticket has been closed with a message about this option being in the pipeline....
(add to previous post)
Not only is the patch not accepted, it is not valid anymore because the codebase has changed...
hm, sorry it is valid and working after all, my bad. Thanks for making it available.
Please remove my post #2 and #3 (this post) from the thread... :-)
Hi,
I wanted to use this patch for my capistrano. From where should I get it?
Thanks,
You can find the patch on the capistrano mailing list (http://groups.google.com/group/capistrano/browse_thread/thread/4ef8718ef9539ef1/c5cfb7be7d152bb8).
I'm in the habit of patching the git recipe in a local directory and redirecting capistrano to find it like so:
$:.unshift('src/ruby')
With the patched recipe file is:
src/ruby/capistrano/recipes/deploy/scm/git.rb
Post a Comment