Capistrano recipe help - dual svn repository paths

Hi,

Is there any way to set up two different svn repository paths, if the svn server is accessed in different ways on the client and server machine?

I'm deploying to DreamHost, and the svn repository is in my DH home directory, as well as being accessible over http. When logged into DH, there is a massive difference in performance between accessing a local repository and accessing it via http. svn ls file:///path/to/repository is about 6 times faster than svn ls http://server/repos/path.

I'd use the file:// path in my deploy.rb, but that breaks the latest_revision command that the client runs before deploy.

"cap deploy" takes nearly 10 minutes using an http:// repository path...

Jon

Jon Evans wrote:

Hi,

Is there any way to set up two different svn repository paths, if the svn server is accessed in different ways on the client and server machine?

I'm deploying to DreamHost, and the svn repository is in my DH home directory, as well as being accessible over http. When logged into DH, there is a massive difference in performance between accessing a local repository and accessing it via http. svn ls file:///path/to/repository is about 6 times faster than svn ls http://server/repos/path.

I don't know if this would work, but you can try it. In your deploy.rb add:

task :after_latest_revision do   set :repository, 'file://wherever_it_lives_local' end

Jon Evans wrote:

Hi,

Is there any way to set up two different svn repository paths, if the svn server is accessed in different ways on the client and server machine?

I have released a new subversion scm module that handles this case, the details are here...

http://blog.wolfman.com/articles/2006/12/06/a-capistrano-scm-module-for-local-svn-access

read the second half which deals with your use case, the first half deals with local access to svn only.