【Subversion】Capistranoのデプロイで必要ない時はasset precompileをしない


なにとなくsvnでかいてみた。
動作保証はできませぬ。
もっと簡潔な書き方あるような...

precompile.rb
 namespace :assets do                                                              
    task :precompile, :roles => :webs do                                            
      revs = []                                                                     
      [                                                                             
        current_path,                                                               
        release_path                                                                
      ].each{|i|
        revs << capture("cd #{i} && svnversion").chomp.gsub(/M/, '')
      }       
      lines = revs.uniq.size < 2 ? 0 :                                              
        capture("cd #{release_path} && svn log -v -r#{revs.join(':')} | grep 'app/assets' | wc -l").to_i                                                                                                    
      if lines > 0                                                                  
        p "precompile"                                                              
        run %Q{cd #{latest_release} && #{rake} RAILS_ENV=#{rails_env} #{asset_env} assets:precompile}
      else                                                                          
        p "skipping precompile"                                                     
      end                                                                           
    end                                                                             
  end