Решение в вашем вопросе близко к правильному. Вы должны будете указать свой git-репозиторий немного иначе. Что вам нужно, это:
set :repository, "someuser@somehost:/home/myproject"
set :scm, "git"
set :deploy_via, :copy
Есть еще примеры того, как настроить развертывание git в вашем геме Capistrano в lib/capistrano/recipes/deploy/scm/git.rb
.
Что происходит, когда вы используете стратегию развертывания copy
, так это то, что Capistrano клонирует ваше git-репо на /tmp
на вашем локальном компьютере, отслеживает и архивирует результат, а затем передает его на сервер через sftp. Стратегия копирования также поддерживает копирование через scp, но нет способа заставить ее сделать это, не разбираясь в источнике.