Skip to content

Commit

Permalink
A better idea, take the -qr HEAD log as before but use the root of th…
Browse files Browse the repository at this point in the history
…e svn

instead of rails trunk.  This allows svn 1.1.x (debian) to work with freeze
edge out of the box, without having to specify REVISION.

References #4356, #4450, #4569.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4155 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information
Scott Barron committed Apr 4, 2006
1 parent fb8428f commit 6b3bc1b
Showing 1 changed file with 7 additions and 12 deletions.
19 changes: 7 additions & 12 deletions railties/lib/tasks/framework.rake
Expand Up @@ -35,30 +35,25 @@ namespace :rails do
desc "Lock to latest Edge Rails or a specific revision with REVISION=X (ex: REVISION=4021) or a tag with TAG=Y (ex: TAG=rel_1-1-0)" desc "Lock to latest Edge Rails or a specific revision with REVISION=X (ex: REVISION=4021) or a tag with TAG=Y (ex: TAG=rel_1-1-0)"
task :edge do task :edge do
$verbose = false $verbose = false
svn_version = `svn --version -q` rescue nil `svn --version` rescue nil
unless !$?.nil? && $?.success? unless !$?.nil? && $?.success?
$stderr.puts "ERROR: Must have subversion (svn) available in the PATH to lock this application to Edge Rails" $stderr.puts "ERROR: Must have subversion (svn) available in the PATH to lock this application to Edge Rails"
exit 1 exit 1
end end


major, minor, sub = svn_version.strip.split '.'
if ENV['REVISION'].nil? && major.to_i == 1 && minor.to_i < 2
puts "The --limit option is not available in your version of svn."
puts "Please try this syntax: rake rails:freeze:edge REVISION=4145"
exit 1
end

rm_rf "vendor/rails" rm_rf "vendor/rails"
mkdir_p "vendor/rails" mkdir_p "vendor/rails"

svn_root = "http://dev.rubyonrails.org/svn/rails/"


if ENV['TAG'] if ENV['TAG']
rails_svn = "http://dev.rubyonrails.org/svn/rails/tags/#{ENV['TAG']}" rails_svn = "#{svn_root}/tags/#{ENV['TAG']}"
touch "vendor/rails/TAG_#{ENV['TAG']}" touch "vendor/rails/TAG_#{ENV['TAG']}"
else else
rails_svn = 'http://dev.rubyonrails.org/svn/rails/trunk' rails_svn = "#{svn_root}/trunk"


if ENV['REVISION'].nil? if ENV['REVISION'].nil?
ENV['REVISION'] = /^r(\d+)/.match(%x{svn log -q --limit 1 #{rails_svn}})[1] ENV['REVISION'] = /^r(\d+)/.match(%x{svn -qr HEAD log #{svn_root}})[1]
puts "REVISION not set. Using HEAD, which is revision #{ENV['REVISION']}." puts "REVISION not set. Using HEAD, which is revision #{ENV['REVISION']}."
end end


Expand Down

0 comments on commit 6b3bc1b

Please sign in to comment.